CentOS 7环境下CPP-REST-SDK安装方式咨询
在CentOS 7上安装CPP-REST SDK的解决方案
兄弟,我明确告诉你——CentOS 7的官方基础仓库和你已添加的EPEL源里确实没有预编译的CPP-REST SDK包(对应Debian/Ubuntu下的libcpprest-dev)。所以你得走源码编译的路子,不过整个流程不算复杂,我给你捋清楚实操步骤:
1. 先装编译依赖
首先得把编译需要的工具和依赖库备齐,直接用yum安装就行:
sudo yum install -y gcc-c++ cmake boost-devel openssl-devel git
简单说下这些依赖的作用:
gcc-c++:C++代码的核心编译工具cmake:用来生成CPP-REST的编译配置文件boost-devel:CPP-REST依赖的核心基础库openssl-devel:支持HTTPS等加密通信功能git:用来拉取CPP-REST的官方源码仓库
2. 拉取CPP-REST SDK源码
从官方仓库克隆代码,记得加--recursive参数,因为项目包含子模块,必须拉全才能正常编译:
git clone --recursive https://github.com/microsoft/cpprestsdk.git cd cpprestsdk # 可选:如果需要特定稳定版本,比如2.10.18,执行下面这行锁定版本 git checkout 2.10.18
3. 编译并安装
创建单独的编译目录(避免污染源码目录),然后用cmake配置、编译、安装:
mkdir build && cd build cmake .. -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=ON make -j$(nproc) sudo make install
参数说明:
-DCMAKE_BUILD_TYPE=Release:编译性能更优的发布版本(而非调试版)-DBUILD_SHARED_LIBS=ON:生成动态链接库(推荐,节省磁盘空间且方便后续更新)-j$(nproc):利用所有CPU核心加速编译,大幅缩短等待时间
4. 配置动态库路径(关键步骤)
默认情况下,CentOS 7不会自动扫描/usr/local/lib目录(CPP-REST的默认安装位置),所以得手动配置让系统能找到库文件:
echo "/usr/local/lib" | sudo tee /etc/ld.so.conf.d/cpprest.conf sudo ldconfig
额外说明
如果你实在不想自己编译,也可以找找第三方RPM仓库,但第三方仓库可能存在版本兼容或安全风险,不如源码编译的可控性强,所以还是优先推荐上面的源码编译方案。
内容的提问来源于stack exchange,提问作者chris01




