MacOS编译socket.io-client-cpp

安装Boost

  • 下载安装包
  • 解压进入文件夹
./bootsrap.sh
  • 执行生成的b2
./b2 install

不加install,生成的头文件和库文件在这个文件夹,加上install,生成文件在/usr/local

  • 使用boost
g++ a.cpp  -I /usr/local/include -L /usr/local/lib -l boost_system -l boost_thread

编译socket.io-client

  • 下载repo
git clone --recurse-submodules https://github.com/socketio/socket.io-client-cpp.git

可能会出现其中的gtest无法clone的情况,是rapidjson用到的gtest,单独下载https://chromium.googlesource.com/external/googletest.git,在复制到相应的路径。

  • 执行cmake
cmake -DBOOST_ROOT:STRING=<your boost install folder> -DBOOST_VER:STRING=<your boost version> ./
  • 执行make
make install

这里有可能会出现编译失败的情况,参考这个issue,到lib/websocketpp切换到master能解决。

cd socket.io-client-cpp/lib/websocketpp
git checkout master
  • 生成的文件都在build文件夹中
build
├── include
│   ├── sio_client.h
│   ├── sio_message.h
│   └── sio_socket.h
└── lib
└── Release
├── libboost_date_time.a
├── libboost_random.a
├── libboost_system.a
└── libsioclient.a

3 directories, 7 files