操作流程:
1.安装OpenSSL(x64还是x32根据你需要编译的来)
2.下载安装CMAKE
3.从官网下载AMQPcpp源码
4.CMAKE把AMQPcpp源码转换为VS工程项目
5.编译AMQPcpp项目
一、安装OpenSSL(x64还是x32根据你需要编译的来)
openSSL下载链接:Win32/Win64 OpenSSL Installer for Windows - Shining Light Productions(本次编译使用的版本是3.0.3)
二、下载安装CMAKE
CMAKE下载链接:Download | CMake(本次编译使用的版本是3.24.2)
下载好后直接安装,这里就不再赘述了(一直next的话除了安在C盘为其他问题也不大)。
三、从官网下载AMQPcpp源码
(写时指向GitHub地址为GitHub - akalend/amqpcpp: rabbitcpp is a C++ library for Message Queue Server RabbitMQ)
将所有文件下载到D:\RabbitMQ\amqpcpp。
在D:\RabbitMQ文件夹内新建一个build文件夹,如下图所示。
四、CMAKE把AMQPcpp源码转换为VS工程项目
如下图所示,先选好源码(蓝色框)和输出目录(红色框),再点击配置(黄色框)。
在弹出框中选择好对应的VS版本和编译平台(以win32为例),然后点击Finish,等待输出configure done则表示配置完成。点击左下角的Generate按钮开始转换,输出Generate done表示转换完毕,若中间出现error,请仔细对照输出日志进行调整。
完成转换后点击左下角的Open Project直接打开项目
五、编译AMQPcpp项目
打开项目后右侧有7个项目,我们真正要只有amqpcpp一个项目,右键它进行属性配置。
将openssl库文件进行配置
修改链接器->输入中的项:
将原有的ssl.lib和crypto.lib改为 libcrypto32MDd.lib和libssl32MDd.lib
实际上就是将openssl库文件中的文件改名了,如图所示。
右键amqpcpp项目选择“仅用于项目”->"仅重新生成amqpcpp(R)"
这时会发现出现错误“LINK : fatal error LNK1104: 无法打开文件“rabbitmq-c\librabbitmq\Debug\rabbitmq.4.lib”,这是因为我们还没有编译rabbitmq-c,在D:\RabbitMQ\build\rabbitmq-c中还有一个项目rabbitmq-c.sln,用vs打开后,直接点击生成->重新生成即可,然后关掉rabbitmq-c.sln项目。打开amqpcpp.sln项目重新生成amqpcpp项目(右键amqpcpp项目选择“仅用于项目”->"仅重新生成amqpcpp(R)")即可生成amqpcpp.dll。
若要生成lib文件,则需要右键amqpcpp项目->属性,将“常规”项中的“目标文件扩展名”和“配置类型”改为如下图所示,然后点击确认后右键amqpcpp项目选择“仅用于项目”->"仅生成amqpcpp(B)"即可同时获得lib文件。
注意:使用的时候需要将D:\RabbitMQ\build\rabbitmq-c\librabbitmq\Debug中的rabbitmq.4.lib、rabbitmq.4.dll和D:\RabbitMQ\build\Debug中的amqpcpp.dll和amqpcpp.lib一起打包拷出,使用的时候都需要配置。
为方便使用,如下链接中有我已经编译好的所有版本。
「RabbitMQ环境打包」https://www.aliyundrive.com/s/n55pJbn27mK 提取码: 2qj1