使用Ubuntu 16.04命令安装方式不能成功,只能采用源码安装方式
首先编译依赖 libssl-dev libbz2-dev mcpp libexpat1-dev 需要先安装
本机18.04版本 sudo apt-get install 方式用不了,只能采用aptitude install 方式
命令行安装
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv B6391CB2CFBA643D
sudo apt-add-repository -s "deb [arch=amd64] http://zeroc.com/download/Ice/3.7/ubuntu`lsb_release -rs` stable main"
下载
wget https://github.com/zeroc-ice/ice/archive/v3.6.4.tar.gz
tar zxf v3.6.3.tar.gz
tip: 下载对应版本只需要更改版本号即可 如下载v3.6.3 链接改为 https://github.com/zeroc-ice/ice/archive/v3.6.3.tar.gz
编译
sudo make
1.报错缺少 openssh/sha1 安装libssl-dev
sudo aptitude install libssl-dev
2.使用 sudo apt-get install libssl-dev 报错E: 无法修正错误,因为您要求某些软件包保持现状
就是它们破坏了软件包间的依赖关系
3.使用 aptitude 方法安装 先安装aptitude
sudo apt-get install aptitude
sudo aptitude install libssl-dev 选择n 再选择y 安装成功
4.编译报错
/usr/bin/ld: 找不到 -lmcpp
下载mcpp源码安装mcpp
git clone https://github.com/zeroc-ice/mcpp.git
cd mcpp
make
sudo make install
5.修改ice中mcpp安装目录重新编译
修改 ice-3.6.3中的 cpp/config/Make.rules
搜索MCPP_HOME
MCPP_HOME ?= /opt/mcpp-2.7.2/
6.编译报错ConnectionI.cpp:33:12: fatal error: bzlib.h: 没有那个文件或目录
# include <bzlib.h>
安装libbz2-dev
7. fatal error: db_cxx.h: 没有那个文件或目录 #include <db_cxx.h>
安装 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 --prefix=/usr (--enable-java 没用此选项)
make
sudo make install
使用apt-get install 安装报错 使用aptitude 安装成功
使用aptitude 安装libdb++ -dev
只安装了cpp版 java版还需配置其他 安装目录为 /opt/Ice-3.6.4/下
java版添安装berkeley db 步骤添加 --enable-java
修改 java/gradle.properties加入 java home的设置
org.gradle.java.home=/usr/java/jdk1.7.0_71(根据自己java安装位置变换)