在Ubuntu 下安裝CORBA,和大選的經(jīng)過(guò)有些類(lèi)似,結(jié)果是好的,但是過(guò)程是及其的痛苦阿。
我使用的Linux是Ubuntu 7.10,打算安裝的OmniORB是4.1.2的,但是后來(lái)結(jié)果只把4.1.1的裝上去了。
安裝步驟如果按照說(shuō)明文檔README.unix中的說(shuō)法是很簡(jiǎn)單的:
mkdir build ->../configure ->make->make install,如果安裝過(guò)程中一點(diǎn)問(wèn)題都沒(méi)有,確實(shí)很簡(jiǎn)單阿,可是Linux不像Windows,做很小的事情不出錯(cuò)都不大可能。
第一個(gè)問(wèn)題是gcc的版本問(wèn)題。這個(gè)問(wèn)題,我是經(jīng)過(guò)無(wú)數(shù)次的實(shí)驗(yàn),加上查看源代碼才發(fā)現(xiàn)的。在idlpython.cc文件里面明明上面有idl_methods的定義,但是就在下面就是找不到,是不是編譯器暈了阿,還是版本不兼容阿?Ubuntu7.10默認(rèn)的gcc版本是4.2的,我修改/usr/bin/gcc鏈接文件,ln -s gcc gcc-2.95 gcc,將它默認(rèn)使用2.95版本。
g++也一起改一下,默認(rèn)是4.1的,改成2.95。
第二個(gè)問(wèn)題是,找不到python,系統(tǒng)題是說(shuō)需要phthon2.5 or higher,奇怪,我看了一下新立得好像裝了5.2的python,哦,是python5.2-dev及一些庫(kù)文件沒(méi)有選上,選上更新,重新編譯還是有問(wèn)題。
最后沒(méi)喲辦法,就使用4.1.1重新編譯一下就通過(guò)了,估計(jì)4.1.2不能通過(guò)的原因也是編譯器版本問(wèn)題。
最開(kāi)始還有更搞笑的問(wèn)題,一個(gè)Hello,World的C程序都不能通過(guò)編譯,主要是沒(méi)有將C庫(kù)加入,使用命令:sudo apt-get install gcc libc6-dev將libc6-dev庫(kù)加入就可以了。
新聞熱點(diǎn)
疑難解答
圖片精選