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

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