ubuntu16.04上用源代码安装ICE

经过了九九八十一难,终于把ICE安装上了,过程就不都写出来了,总之前途是光明的,道路是曲折的。这里给大家总结一下,希望大家不要像我一样碰到这么多的坑。

首先先说一下准备环境,由于编译 ICE的源代码需要用到很多语言的开发包, 所以需要在编译ICE源代码之前,需要先安装相应的开发环境,包括 java, gradle, nodejs, ruby, python, php, 具体如何搭建各开发环境请百度。本人只在此介绍一下自己的情况。

由于本人之前搭过 ruby 开发环境, java 开发环境 和 nodejs 开发环境。所以相应的 ruby, java, npm等都已经存在,所以在安装中没有报出与这些相关的错误。

但是对于 python, php 和 基于jvm的构建工具 gradle,则都分别爆出了相应的错误,因此需要提前单独安装。

sudo apt-get install python-dev php-dev gradle

下面介绍从源代码编译安装ICE3.6.3的步骤。

1. 下载ICE3.6.3源代码, 并将其解压

wget https://github.com/zeroc-ice/ice/archive/v3.6.3.tar.gz
tar zxf v3.6.3.tar.gz

2. 安装 第三方依赖包, 包括 bzip2, ssl, expat1, berkeley db, mcpp

2.1 安装 bzip2, ssl, expat1 等第三方库

sudo apt-get install libbz2-dev libssl-dev libexpat1-dev

2.2 安装 berkeley db

wget https://zeroc.com/download/berkeley-db/db-5.3.28.NC.tar.gz
tar xzf db-5.3.28.NC.tar.gz
wget https://zeroc.com/download/berkeley-db/berkeley-db.5.3.28.patch
cd db-5.3.28.NC
patch -p0 < ../berkeley-db.5.3.28.patch
cd build_unix
../dist/configure --enable-cxx --enable-java --prefix=/usr
make
sudo make install

2.3 安装 mcpp

git clone https://github.com/zeroc-ice/mcpp.git
cd mcpp
make
sudo make install 

mcpp 的lib 应该会被copy到 /opt/mcpp-2.7.2/, 这个路径下一步会用到。

3. 编译 ice-3.6.3

3.1 修改 ice-3.6.3中的 cpp/config/Make.rules

加入下面这一行 标明 mcpp的安装路径。

MCPP_HOME ?= /opt/mcpp-2.7.2/

3.2 修改 java/gradle.properties

加入 java home的设置

org.gradle.java.home=/home/icebergwu/jdk/jdk1.7.0_71

3.3 使用 make 命令编译

make

4. 安装ICE

sudo make install

5. 添加环境变量并加载

export ICE_HOME=/opt/Ice-3.6.3
export PATH=$ICE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ICE_HOME/lib:$LD_LIBRARY_PATH

6. 验证安装是否成功

slice2java -v

如果能得到版本号 3.6.3 则表示安装成功。

参考的链接:
https://doc.zeroc.com/display/Ice36/Building+Berkeley+DB+and+mcpp+on+Linux
http://www.linuxdiyf.com/linux/16158.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章