下午打算在CentOS 5.1上編譯Erlang-R12B-5,還是遇到一些問題。
首先從Erlang官方下載了最新的源碼包,解壓后
./configurate –enable-threads –enable-kernel-poll
遇到找不到j(luò)dk和odbc的問題,然后下載了jdk-6u10-linux-i586-rpm.bin、unixODBC、unixODBC-devel。
一、安裝JDK
(1)在opt下新建一個(gè)java文件夾
mkdir /usr/java
(2)我用的ftp將JDK文件放入到/usr/java文件夾下
放入后,執(zhí)行下面這個(gè)命令:
cd /usr/java
chmod a+x jdk-6u10-linux-i586-rpm.bin使當(dāng)前用戶擁有對(duì)jdk-6u10-linux-i586-rpm.bin的執(zhí)行權(quán)限
(3)執(zhí)行安裝
./jdk-6u10-linux-i586-rpm.bin
運(yùn)行jdk-6u10-linux-i586-rpm.bin,這時(shí)會(huì)顯示出JDK的安裝許可協(xié)議,按空格翻頁,最后程序會(huì)問你是不是同意上面的協(xié)議,當(dāng)然同意啦,輸入“yes”之后開始解壓JDK到當(dāng)前目錄。此時(shí)屏幕上會(huì)顯示解壓的進(jìn)度。
解壓完成后/usr/java目錄下會(huì)新建一個(gè)名為“jdk1.6.0_01”的目錄,至此我們已經(jīng)在CentOS下安裝好了JDK。
二、配置JDK
理論上來說JDK裝好了以后就可以正常使用了,但是為了我們?nèi)蘸笫褂玫姆奖?,我們還要對(duì)它設(shè)置一下。與Windows下的JDK設(shè)置一樣,我們通常需要設(shè)置一下環(huán)境變量。
我習(xí)慣修改/etc/profile來添加環(huán)境變量,/etc/profile中設(shè)置的環(huán)境變量就像Windows下環(huán)境變量中的系統(tǒng)變量一樣,所有用戶都可以使用。
由于CentOS自帶了JRE環(huán)境,需要卸載alternatives文件中的java
rm /var/lib/alternatives/java,輸入’y’確定。
用文本編輯器打開/etc/profile
vi /etc/profile
在最后加入以下幾行:
export JAVA_HOME=/usr/java/jdk1.6.0_1
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
這樣我們就設(shè)置好了JDK,用reboot命令重啟一下機(jī)器就可以了。
三、刪除/卸載JDK
刪除JDK,別忘了把配置文件的相關(guān)內(nèi)容也清空啊
rm -fr jdk1.6.0_1
四、安裝unixODBC
yum install unixODBC
五、安裝unixODBC-devel
yum install unixODBC-devel
這下./configurate –enable-threads –enable-kernel-poll可以順利通過了。
然后make時(shí)又遇到棘手問題了,原來是CentOS 5有bug,ssl需要依賴keyutils和selinux這兩個(gè)lib。因此編譯的時(shí)候,需要手工指定鏈接這兩個(gè)lib。即編輯Erlang源碼包里的lib/ssl/c_src/Makefile.in這個(gè)文件,修改
LIBS = @LIBS@
為
LIBS = @LIBS@ -lkeyutils -lselinux
重新./configure,make即可。