1. 下载源码包:

    https://github.com/ZeroCM/zcm 

   2. 依赖环境安装:

    a. java环境配置

yum install java-1.8.0-openjdk* -y
/etc/profile.d/jdk.sh
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.161-0.b14.el7_4.x86_64

    b.  cpython环境安装

pip install Cython --install-option="--no-cython-compile"

     c. libzmq环境安装

yum list |grep libtool #依赖环境安装
cd /usr/local/src && git clone git://github.com/zeromq/libzmq.git  #下载源码
cd libzmq && ./autogen.sh && ./configure --prefix=/usr/local/libzmq && make && make check && make install #自定义编译安装
vim /etc/profile.d/libzmq.sh  #配置环境变量
export libzmq=/usr/local/libzmq #配置命令环境
export PATH=$PATH:$libzmq/bin
vim /etc/ld.so.conf.d/libzmq.conf  #配置动态链接库环境
/usr/local/libzmq/lib
ldconfig #重新加载动态链接库
ln -s /usr/local/libzmq/lib/pkgconfig/libzmq.pc /usr/lib64/pkgconfig/libzmq.pc   #该步骤必备,因为pkg-config search path默认路径为/usr/lib64/pkgconfig/,自定义路径不详

    d. libelf环境安装

        yum install elfutils-libelf-devel elfutils-libelf -y (一步到位,下面的源码编译安装遇到的问题是版本不匹配) 注意:执行了这个之后不要再执行后面的操作

cd /usr/local/src && wget   #下载安装包
cd libelf-0.8.13 && ./configure --prefix=/usr/local/libelf && make && make install #自定义路径安装
vim /etc/ld.so.conf.d/libelf.conf #配置动态链接库
 /usr/local/libelf/lib
ldconfig #重新加载动态链接库
###由于下面文件需要固定位置读取,安装的时候建议./configure && make && make install 可以省去下面的步骤。
ln -s /usr/local/libelf/lib/pkgconfig/libelf.pc /usr/lib64/pkgconfig/libelf.pc
ln -s /usr/local/libelf/include/libelf.h /usr/include/libelf.h
ln -s /usr/local/libelf/include/libelf /usr/include/libelf
ln -s  /usr/local/libelf/include/gelf.h /usr/include/gelf.h
ln -s  /usr/local/libelf/include/nlist.h /usr/include/nlist.h

3. 编译安装

    a.  编译所有功能

./waf configure --prefix=/usr/local/zcm --use-all
./waf build
./waf install

    b.配置环境变量

/etc/profile.d/zcm.sh
export ZcmPath=/usr/local/zcm
export PATH=$PATH:$ZcmPath/bin

source /etc/profile
/etc/ld.so.conf.d/zcm.conf
/usr/local/zcm/lib
/usr/local/zcm/lib64

ldconfig

遇到问题的截图:

Zcm系统部署_第1张图片 

 Zcm系统部署_第2张图片

Zcm系统部署_第3张图片

Zcm系统部署_第4张图片

成功的截图:

Zcm系统部署_第5张图片

build失败截图:

image.png

ln -s /usr/local/libelf/include/libelf.h /usr/include/libelf.h  #这条命令解决上面的问题

Zcm系统部署_第6张图片

Zcm系统部署_第7张图片

ln -s /usr/local/libelf/include/libelf /usr/include/libelf
ln -s  /usr/local/libelf/include/gelf.h /usr/include/gelf.h
ln -s  /usr/local/libelf/include/nlist.h /usr/include/nlist.h  ##这三条命令解决了上面的问题

成功截图:

Zcm系统部署_第8张图片

install 成功截图:

Zcm系统部署_第9张图片