藍森林首頁 | 返回主頁 | 本站地圖 | 站內搜索 | 聯繫信箱 |
 您目前的位置:首頁 > 自由軟件 > 技術交流 > 系統管理


    

藍森林 http://www.lslnet.com 2006年8月18日 15:18


吐血奉獻Linux下的Proc編譯訣竅

吐血奉獻Linux下的Proc編譯訣竅

首先,本人的系統是Redhat Linux9.0+Oracle9i R2,如果有出入,請自己核對,本人概不負責,不過可以一起討論:fzbook@vip.sina.com。
        Oracle9i R2提供了一個非常完美聯編的make工具,本人也是新手上路,一番琢磨,解決問題,怦然心動,不將他放在網上總覺得遺憾,所以馬上書寫一份文檔,共網友討論。
為了安全,請建立你自己的開發目錄。我是建立了一個oracle用戶的目錄/develop目錄,在下面建立了一個proc子目錄。步聚如下:
1)        以oracle用戶登錄系統。
2)        cp $ORACLE_HOME/precomp/demo/proc/demo_proc32.mk /develop/proc/
3)        cd /develop/proc/,修改demo_proc32.mk,如下操作:
a)        定位到189行,應該是句這樣的話:
PROCPPFLAGS=code=cpp $(CPLUS_SYS_INCLUDE)
改為:
PROCPPFLAGS=code=cpp $(CPLUS_SYS_INCLUDE) CPP_SUFFIX=cc
4)        編輯$ORACLE_HOME /precomp/lib目錄下面的env_precomp.mk文件,修改該文件之前請務必保存一個備份,以防不測。
a)        定位1555行,將LIBDIR32=lib32改為LIBDIR32=lib
b)        定位1561行,將C2O_32=$(CC) $(CFLAGS32) -c $*.cc改為C2O_32=$(CC) $(CFLAGS32) -c *.cc
c)        定位1562行,將C++2O_EXE_32=$(CPLUSPLUS) $(LFLAGS32) -c $(INCLUDE) $(EXE).cc 改為C++2O_EXE_32=$(CPLUSPLUS) $(LFLAGS32) -c $(INCLUDE) *.cc
d)        定位1563行,將C++2O_32=$(CPLUSPLUS) $(LFLAGS32) -c $(INCLUDE) $*.cc改為C++2O_32=$(CPLUSPLUS) $(LFLAGS32) -c $(INCLUDE) *.cc
5)        將你要編譯的原碼放在/develop/proc下面,執行如下命令:
make –f demo_proc.mk OBJS=」Db.o test.o」 EXE=Db cppbuild
注意:在我的/develop/proc下面有Db.pc,Db.h,test.cc三個源碼。你可以跟該的僅僅是OBJS裡面的信息,什麼樣子的cc文件,就有什麼樣的o文件。
在執行這個命令之前,請務必確保你的o文件,lis文件以及pc的c/cc文件已經被刪除。
6)        我上面的所有操作都是針對C++格式以及
7)        源文件為cc的文件。
8)        如果你有什麼樣的建議,請告訴我fzbook@vip.sina.com,為中華民族的IT而奮鬥終身。

吐血奉獻Linux下的Proc編譯訣竅

我用oracle8i+linux73,好像沒這麼麻煩,8i和9i區別很大嗎?

吐血奉獻Linux下的Proc編譯訣竅

終於找到有幫助的文章了,我的機器是64位,AIX系統,也是9i的oracle.
我試試看. :)



Copyright © 1999-2000 LSLNET.COM. All rights reserved. 藍森林網站 版權所有。 E-mail : webmaster@lslnet.com