本文说明Qpid C++ Broker在Ubuntu 18.04系统下的安装过程
1. 系统环境
- 硬件平台:x86_64,CPU和内存数量没有硬性要求,我测试的虚拟机配置时1CPU2Core,4G RAM
- 操作系统:Ubuntu Desktop 18.04.3 Minimal安装
2. 安装版本
- Qpid Proton: qpid-proton-0.36.0.tar.gz
- Qpid C++: qpid-cpp-1.39.0.tar.gz
- Qpid Python: qpid-python-1.37.0.tar.gz
3. 安装过程
参考qpid-cpp-1.39.0/INSTALL.txt
3.1 依赖项安装
序号 | 分组 | 名称 | 文档最低版本 | 实际安装版本 |
---|---|---|---|---|
1 | Libraries | boost | 1.41(1.33) | 1.65.1 |
2 | Libraries | libuuid | 2.19 | 2.31.1 |
3 | Libraries | pkgconfig | 0.21 | 0.29.1 |
4 | AMQP 1.0 | Qpid proton-c | 0.5 | 0.36.0 |
5 | XML exchange | xqilla | 2.0.0 | 2.3.3 |
6 | XML exchange | xerces-c | 2.7.0 | 3.2.0 |
7 | SSL | nss | 3.35 | |
8 | SSL | nspr | 4.18 | |
9 | RDMA | libibverbs | 1.1 | 17.1 |
10 | RDMA | librdmacm | 1.0 | 17.1 |
11 | ruby binding | ruby and ruby devel | 2.5.1 | |
12 | ruby binding | swig | 3.0.12 | |
13 | C++ compiler | gcc | 4.1.2 | 7.5.0 |
14 | build directly from the SVN repository | Cmake | 2.6.4 | 3.10.2 |
15 | build directly from the SVN repository | GNU make | 3.8.0 | 4.1 |
16 | build directly from the SVN repository | help2man | 1.36.4 | 1.47.6 |
17 | build directly from the SVN repository | doxygen | 1.5.1 | 1.8.13 |
18 | build directly from the SVN repository | graphviz | 2.12 | 2.40.1 |
19 | build directly from the SVN repository | ruby 1.8 | 1.8.4 | 2.5.1 |
20 | build directly from the SVN repository | python 2.x | 2.4.3 | 2.7.17 |
21 | QMF bindings for Ruby and Python | ruby-devel | 2.5.1 | |
22 | QMF bindings for Ruby and Python | python-devel | 2.7.17 | |
23 | QMF bindings for Ruby and Python | swig | 1.3.35 | 3.0.12 |
24 | Qpid Proton | CMake | 3.81 | 3.10.2 |
25 | Qpid Proton | GCC | 4.8.4 | 7.5.0 |
26 | Qpid Proton | Cyrus SASL | 2.1 | 2.1.27 |
27 | Qpid Proton | OpenSSL | 1.0 | 1.1.1 |
28 | Qpid Proton | JsonCpp | 1.8 | 1.7.4 |
29 | Qpid Proton | Python | 2.7 | 2.7.17 |
30 | Qpid Proton | Swig | 1.3 | 3.0.12 |
31 | Qpid Proton | Ruby | 1.9 | 2.5.1 |
32 | Qpid Proton | Go | 1.11 | 1.17.5 |
sudo apt install build-essential
sudo apt install libboost-all-dev
sudo apt install uuid-dev
sudo apt install cmake
sudo apt install libxqilla-dev
sudo apt install libnss3-dev
sudo apt install librdmacm-dev
sudo apt install ruby-dev
sudo apt install swig
sudo apt install help2man
sudo apt install doxygen
sudo apt install graphviz
sudo apt install libsasl2-dev
sudo apt install libssl-dev
sudo apt install libjsoncpp-dev
#sudo apt install golang
# 包管理安装的go版本太低,可到官网下载安装
sudo apt install yard
sudo apt install python3-sphinx
sudo apt install python3-setuptools
sudo apt install python3-wheel
sudo apt install python3-pip
3.2 安装Qpid Proton
Qpid AMQP 1.0 版本协议支持依赖此库
tar -xvf qpid-proton-0.36.0.tar.gz
cd qpid-proton-0.36.0
mkdir build
cd build
cmake ..
make -j4
sudo make install
3.3 安装Qpid C++
包含C++版本的Broker和客户端库,以及一组Broker管理工具命令(Python实现)。
tar -xvf qpid-cpp-1.39.0.tar.gz
cd qpid-cpp-1.39.0/
mkdir bld
cd bld
cmake ..
make -j4
sudo make install
3.4 安装Qpid Python
Qpid C++ Broker的管理工具依赖Qpid Python API
tar -xvf qpid-python-1.37.0.tar.gz
cd qpid-python-1.37.0/
sudo python setup.py install