# 简介 bhshmq 基于共享内存的消息通讯库,支持 请求-应答,发布-订阅 两种通讯方式。 客户端/节点 需要先向管理中心注册成功后才能正常收发消息。 # 开发环境: ubuntu 18.04, g++-7.5, cmake, ninja, vscode # 依赖库: ## boost-1.75.0 ### 准备 下载并解压 boost 库, 编译前需要先修改默认编译选项:打开 tools/build/src/tools/gcc.jam, 找到如下一行: compile-link-flags shared/$(non-windows) : -fPIC ; 在下面增加如下一行: compile-link-flags static/$(non-windows) : -fPIC ; ### 编译: ```shell ./bootstrap.sh ./b2 --with-timer --with-test --with-log link=static runtime-link=static threading=multi ``` ### 安装: 可以直接把代码和库连接到 /usr/local/include 和 /usr/local/lib ```shell cd /usr/local/include sudo ln /boost ./ -s cd /usr/local/lib sudo ln /stage/lib/lib*.a ./ -s ``` ## protobuf-3.17.0 ### 准备 下载并解压 protobuf 库. ### 编译: ```shell ./configure CFLAGS=-fPIC CXXFLAGS="-g -std=c++14 -DNDEBUG -fPIC -ffunction-sections -fdata-sections" LDFLAGS="-fPIC -static-libstdc++" make sudo make install ``` # bhshmq 编译 ```shell mkdir build; cd build cmake -G Ninja -DCMAKE_BUILD_TYPE=RELEASE .. ninja ```