Chinaunix首页 | 论坛 | 博客
  • 博客访问: 417534
  • 博文数量: 66
  • 博客积分: 1416
  • 博客等级: 上尉
  • 技术积分: 922
  • 用 户 组: 普通用户
  • 注册时间: 2006-09-16 10:37
个人简介

高級Oracle DBA,善長Linux系統維運以及Oracle數據庫管理,開發,調優. 具有多年PL/SQL開發經驗.

文章分类

全部博文(66)

文章存档

2015年(9)

2014年(4)

2013年(5)

2010年(1)

2009年(3)

2008年(6)

2007年(30)

2006年(8)

我的朋友

分类: Oracle

2007-03-10 10:16:15

  Windows平台下GCC搭配Oracle XML 開發環境配置
---------------------------------------------------------
目地:  有時,我們會需要解析XML文檔,這時我們有個選擇是使用Oracle
的XML 開發包.
  當然,用c語言開發xml有很多種方式,有expat, libxml,xerces..等等.
但有時, 系統既然已經安裝了Oracle Client,而且功能十分齊全,提供了
W3C DOM API, Parser API,SAX API, XSLT API. 又何必再去安裝第三方庫呢.
 

測試環境說明:
 OS : Windows 2000
 Oracle 8.1.7 : Programer 用戶
 Disk : Oracle占用空間180M
 開發工具:  gcc 3.4  (mingw-special) (dev-cpp 4.9.9.2)
 pexports 0.43:用於從Windows PE DLL導出函數接口.
 dlltools : 用於生成dll,和產生gcc可用的庫.
 
   
相關連接:
 
 http://www.bloodshed.net/devcpp.html
 
  
 
------------------------------------------------------------------------
測驗過程如下:

1 . 首先假定你Oracle 817已經正確安裝完畢.
 假如你的Oracle 817安裝在  E:\Oracle\ora81下.
 那麼後面所指的ORACLE_HOME就是指E:\Oracle\ora81 .
 set ORACLE_HOME=E:\Oracle\ora81           

2 .檢查是否有安裝Oracle XDK,以及相關開發文檔,Demo程序.
 %ORACLE_HOME%\bin\oraxml8.dll         : Oracle xml 動態庫
 %ORACLE_HOME%\xdk\                    : demo程序,包括C,C++, Java,PL/SQL範例以及說明文檔.
 %ORACLE_HOME%\xdk\c\parser\demo       : c demo
 %ORACLE_HOME%\lib\oraxml8.lib         : vc可用的連接庫.
 
 
3. 使用VC編譯測試,沒裝的可以跳過.(VC98)
    用cmd進入dos控制台,進入%ORACLE_HOME%\xdk\c\parser\demo目錄
    a. 設定vc變量,
     如e:\progra~1\micros~1\vc98\bin\vcvars32.bat    
    b. 修改Make.bat ,找到link那一段
 刪除 oranls8.lib   
 修改oraxmlc8.lib --> oraxmlc.lib 
 md  %ORACLE_HOME%\xdk\c\parser\bin
    c. 編譯 ,運行make.bat
       make
       在 %ORACLE_HOME%\xdk\c\parser\bin目陸下將生成編譯好的可執行文件
    d. 查看
        dir E:\Oracle\ora81\xdk\c\parser\bin             
 2007/03/10  09:25a              16,384 DOMSample.exe
 2007/03/10  09:25a              16,384 SAXSample.exe
 2007/03/10  09:25a              16,384 DOMNamespace.exe
 2007/03/10  09:25a              16,384 SAXNamespace.exe
 2007/03/10  09:25a              20,480 FullDOM.exe
 2007/03/10  09:25a              16,384 XSLSample.exe       
     e. 測試.
      ..\bin\domsample    輸出正確.
   
 
4.  用pexport和dlltool生成gcc可用的 oraxml庫
    a. 建立mklib.bat
   
 echo off
 rem Create : Gan Jian Hui
 rem Date   : 2007/02/02
 if "%1" == "" goto usage
 set DLL=%1%.dll
 set DEF=%1%.def
 set LIB=lib%1%.a
 
 if not EXIST %DLL%  goto usage
 pexports  %DLL% > %DEF%
 dlltool -D %DLL% -d %DEF% -l %LIB%
 echo Archive : %LIB%
 goto end
 :usage
 echo %DLL% not exists
 :end
 echo on
 
    b.生成dll接口庫,liboraxml8.a
         cd %ORACLE_HOME%\bin
         mklib  oraxml8
         nm liboraxml8.a      :檢查.
         
    c. 將liboraxml8.a放入gcc的lib目錄下
       copy liboraxml8.a  i:\dev-cpp\lib
                
     
5. 重新用gcc編譯xdk的c demo程序
 進入xdk下 c demo程序目錄
 gcc -I..\include -o fulldom.exe fulldom.c -loraxml8
 gcc -I..\include -o saxsample saxsample.c  -loraxml8 
 
 如編譯正確,執行正確,則表示環境已經配置正確.

6. 其它
 在Linux平台下默認編譯器是gcc,使用xdk就簡單的多,只是需要注意太高版本的gcc可能存在
不兼容的問題,使用低版本的就是了.
 
7. Over

   Create Date : 2007-03-10
   Write   :阿飛
   
文件: oraclexml.txt.zip
大小: 1KB
下载: 下载
阅读(2220) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~