下午打算在CentOS 5.1上编译Erlang-R12B-5,还是遇到一些问题。
首先从Erlang官方下载了最新的源码包,解压后
./configurate –enable-threads –enable-kernel-poll
遇到找不到jdk和odbc的问题,然后下载了jdk-6u10-linux-i586-rpm.bin、unixODBC、unixODBC-devel。
一、安装JDK
(1)在opt下新建一个java文件夹
mkdir /usr/java
(2)我用的ftp将JDK文件放入到/usr/java文件夹下
放入后,执行下面这个命令:
cd /usr/java
chmod a+x jdk-6u10-linux-i586-rpm.bin使当前用户拥有对jdk-6u10-linux-i586-rpm.bin的执行权限
(3)执行安装
./jdk-6u10-linux-i586-rpm.bin
运行jdk-6u10-linux-i586-rpm.bin,这时会显示出JDK的安装许可协议,按空格翻页,最后程序会问你是不是同意上面的协议,当然同意啦,输入“yes”之后开始解压JDK到当前目录。此时屏幕上会显示解压的进度。
解压完成后/usr/java目录下会新建一个名为“jdk1.6.0_01”的目录,至此我们已经在CentOS下安装好了JDK。
二、配置JDK
理论上来说JDK装好了以后就可以正常使用了,但是为了我们日后使用的方便,我们还要对它设置一下。与Windows下的JDK设置一样,我们通常需要设置一下环境变量。
我习惯修改/etc/profile来添加环境变量,/etc/profile中设置的环境变量就像Windows下环境变量中的系统变量一样,所有用户都可以使用。
由于CentOS自带了JRE环境,需要卸载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
这样我们就设置好了JDK,用reboot命令重启一下机器就可以了。
三、删除/卸载JDK
删除JDK,别忘了把配置文件的相关内容也清空啊
rm -fr jdk1.6.0_1
四、安装unixODBC
yum install unixODBC
五、安装unixODBC-devel
yum install unixODBC-devel
这下./configurate –enable-threads –enable-kernel-poll可以顺利通过了。
然后make时又遇到棘手问题了,原来是CentOS 5有bug,ssl需要依赖keyutils和selinux这两个lib。因此编译的时候,需要手工指定链接这两个lib。即编辑Erlang源码包里的lib/ssl/c_src/Makefile.in这个文件,修改
LIBS = @LIBS@
为
LIBS = @LIBS@ -lkeyutils -lselinux
重新./configure,make即可。