visual studio2022,开发CMake项目添加rabbitmq库,连接到远程计算机并进行开发于调试

1.打开visual studio installer 。安装“用于 Windows 的 C++ CMake 工具”
在这里插入图片描述
2.新建CMake项目
在这里插入图片描述
3.点击VS的“工具”—>"选项“—>“跨平台”—>”连接管理器“,添加远程计算机。用来将VS编辑的代码传到服务器进行编译–连接—运行(调试)。
在这里插入图片描述
3.1 windows上同步开发的类库
在这里插入图片描述

4.连接到Linux系统,设置适用于跨平台 C++ 开发的 Linux 计算机
在 Linux 计算机上需要这些工具:C++ 编译器、gdb、ssh、rsync、make 和 zip,在基于 Debian 的系统上,可以使用此命令安装这些依赖项:

sudo apt install -y openssh-server build-essential gdb rsync make zip

5.安装最新版CMake,这个是由于编译Rabbitmq需要的,参考此篇:https://blog.csdn.net/weixin_41432198/article/details/138124367

6.直接从 apt 安装rabbitmq-c库

sudo apt-get install librabbitmq-dev

7.在Linux 中 构建SimpleAmqpClient,完成后文件被存放到这里了:/usr/local/lib/ 。

git clone https://github.com/alanxz/SimpleAmqpClient.git
mkdir simpleamqpclient-build
cd simpleamqpclient-build
cmake ..
make 
make install 

8.编辑CMakeLists.txt文件,添加依赖进来,在最后面添加如下:

# 找到rabbitmq-c库
find_package(rabbitmq-c REQUIRED)
# 链接rabbitmq-c库
target_link_libraries(${PROJECT_NAME} rabbitmq)

# 手动指定SimpleAmqpClient头文件路径
include_directories("/usr/local/lib")

# 手动指定库文件路径
link_directories("/usr/local/lib")

# 链接SimpleAmqpClient库
 target_link_libraries(${PROJECT_NAME} "/usr/local/lib/libSimpleAmqpClient.so")

9.在代码中添加头文件并引用:

#include "WorkerService_Linux.h"
#include <SimpleAmqpClient/SimpleAmqpClient.h>

using namespace std;

int main()
{
    // 创建到RabbitMQ服务器的连接
    AmqpClient::Channel::ptr_t channel = AmqpClient::Channel::Create("localhost");

    // 定义队列
    std::string queue_name = channel->DeclareQueue("demo_queue"); 

    // 发送消息
    std::string message = "Hello RabbitMQ!";
    channel->BasicPublish("", queue_name, AmqpClient::BasicMessage::Create(message));
     
	cout << "Hello CMake222." << endl;
	return 0;
} 

这时就可以在VS中任意打断点了,如下。

在这里插入图片描述

最近更新

  1. TCP协议是安全的吗?

    2024-05-01 13:08:02       19 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-05-01 13:08:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-05-01 13:08:02       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-05-01 13:08:02       20 阅读

热门阅读

  1. Nacos和Eureka有什么区别

    2024-05-01 13:08:02       11 阅读
  2. 指代消解原理

    2024-05-01 13:08:02       11 阅读
  3. Day41 HTTP编程

    2024-05-01 13:08:02       12 阅读
  4. 邦芒面试:面试时,如何展现卓越的口才

    2024-05-01 13:08:02       9 阅读
  5. 程序员商业模式画布

    2024-05-01 13:08:02       9 阅读
  6. 云计算与云服务

    2024-05-01 13:08:02       21 阅读
  7. 云计算知识点-02

    2024-05-01 13:08:02       14 阅读
  8. LLM系列(2):开源LLM Promp调优之道进阶指南

    2024-05-01 13:08:02       14 阅读
  9. typescript学习笔记

    2024-05-01 13:08:02       13 阅读
  10. html中引用视频文件的方式有哪些?

    2024-05-01 13:08:02       37 阅读
  11. 基于docker-compose使用虚拟机搭建redis集群

    2024-05-01 13:08:02       13 阅读
  12. GBCD:图卷积宽度跨域推荐系统

    2024-05-01 13:08:02       19 阅读