Linux rabbitmq客户端 SimpleAmqpClient 源码编译

SimpleAmqpClient的编译成库,加入到工程中

1、下载SimpleAmqpClient 源码:

    git克隆的路径为:https://github.com/alanxz/SimpleAmqpClient.git  

   下载压缩包路径:https://codeload.github.com/alanxz/SimpleAmqpClient/zip/master


2、安装boost库

    linux配置boost的方法:https://www.cnblogs.com/132818Creator/p/13183552.html

   1、下载源码:http://www.boost.org/

   2、tar zxvf boost_1_70_0.tar.gz

   3、cd boost_1_70_0

   4、./bootstrap.sh --with-libraries=all --with-toolset=gcc
   --with-libraries指定编译哪些boost库,all的话就是全部编译,只想编译部分库的话就把库的名称    写上,之间用 , 号分隔即可

   --with-toolset指定编译时使用哪种编译器,Linux下使用gcc即可,如果系统中安装了多个版本的    gcc,在这里可以指定gcc的版本,比如--with-toolset=gcc-4.4

  5、./b2 toolset=gcc

  6、./b2 install --prefix=/home/dd/boost/ -- 后面为生成的地址

  7.添加环境变量

vim ~/.bashrc

   文件末尾添加

export BOOST_LIB=/data2/dgh/boost_1_70_0/lib/include/
export BOOST_LIB=/data2/dgh/boost_1_70_0/lib
source ~/.bashrc

3、安装cmake

    apt-get install cmake

4、SimpleAmqpClient 依赖rabbitmq-c 在编译之前,要先把rabbitmq-c编译成库,加入到系统中

(1)下载rabbitmq-c源码包:https://codeload.github.com/alanxz/rabbitmq-c/zip/v0.9.0

(2)下载rabbitmq-codegen源码包:https://codeload.github.com/rabbitmq/rabbitmq-codegen/zip/master 

         可下载的稳定版本的分支:https://codeload.github.com/rabbitmq/rabbitmq-codegen/zip/v3.7.x

(3)解压rabbitmq-c和rabbitmq-codegen,并将rabbitmq-codegen解压后重命名为codegen放到rabbitmq-c(原来已经有一个空codegen目录,覆盖即可)

  
   进入到解压完rabbitmq-c的目录下,执行:   

mkdir build 
cd build
cmake .. 
make

执行 sudo make install 可在终端看见 头文件和库文件的地址

 将 Rabbitmqc_INCLUDE_DIR和Rabbitmqc_LIBRARY 添加到系统的环境变量:

vim ~/.bashrc 
export Rabbitmqc_INCLUDE_DIR=/usr/local/include/
export Rabbitmqc_LIBRARY=/usr/local/lib/aarch64-linux-gnu/
source ~/.bashrc 

5、到SimpleAmqpClient的目录下

mkdir build 
cd build
cmake .. 
make

参考链接:

linux/UOS rabbitmq客户端 SimpleAmqpClient 源码编译 - HappyCoder_1 - 博客园

https://www.cnblogs.com/132818Creator/p/13183552.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/58343.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java中String的length与Oracle数据库中VARCHAR2实际存储长度不一致的问题

目录 一、根本原因 二、解决方案 一、根本原因 Oracle数据库新增数据的时候报如下错误: 先给大家看个小案例,这样更好去理解,下面是一段测试代码: 这里面我分别列举了三种字符串,中文,英文和数字以及两种…

SpringKafka生产者、消费者消息拦截

1 前言 在Spring Kafka中,可以通过配置拦截器来实现对生产者和消费者消息的拦截。拦截器可以用来记录日志、修改消息等等。 2 基于Kafka管理的拦截器 Kafka原生提供的拦截器接口是org.apache.kafka.clients.producer.ProducerInterceptor和 org.apache.kafka.cli…

动态规划 —— 路径问题-礼物的最大价值

1. 剑指offer-JZ47-路径问题-礼物的最大价值 题目链接: 礼物的最大价值_牛客题霸_牛客网https://www.nowcoder.com/practice/2237b401eb9347d282310fc1c3adb134?tpId265&tqId39288&ru/exam/oj 2. 算法原理 状态表示:以莫一个位置位置为结尾 d…

安装git-lfs发生报错Could not find Git; can not register Git LFS.解决方案

解决方案: 步骤1.安装Github-Deskop Download GitHub Desktop | GitHub Desktophttps://desktop.github.com/download/ 步骤2.安装 Git! Git for WindowsWe bring the awesome Git VCS to Windowshttps://gitforwindows.org/ 这两个安装完成之后即可…

Unity hub登录时一直无法进入license

直接只卸载unity hub,然后重新下载unity hub安装即可,重新登录即可。 有时会自动关联安装的位置,如果不能,则手动定位添加即可。 网上各种修复的方法操作费时费力。

three.js使用ShaderMaterial实现聚光灯光源demo

文章目录 顶点片元全部 核心: 顶点 varying vec3 vNormal;varying vec3 vViewPosition;void main() {vNormal normalMatrix * normal;vNormal normalize( vNormal );vec4 modelViewPosition modelViewMatrix * vec4(position, 1.0);gl_Position projectionMat…

【jvm】堆的内部结构

目录 1. 说明2. 年轻代(Young Generation)2.1 说明2.2 Eden区2.3 Survivor区 3. 老年代(Old Generation)3.1 说明3.2 对象存放3.3 垃圾回收 4. jdk7及之前5. jdk8及之后 1. 说明 1.JVM堆的内部结构主要包括年轻代(You…

在线教育系统源码开发详解:网校培训平台搭建的核心技术

本篇文章,笔者将详细介绍在线教育系统源码的开发过程,重点聚焦网校培训平台搭建的核心技术,以期为有意从事在线教育行业的开发者提供实用的参考。 一、在线教育系统的构成 前端负责用户的交互体验,后端处理业务逻辑,…

DeepLearn-实现天气的识别

🍨 本文为🔗365天深度学习训练营 中的学习记录博客🍖 原作者:K同学啊 本次使用的数据集有晴天、雨天、多云和日出。 导入基本的包 包括读取文件、图像处理、科学计算和tensorflow的api包layers是层模块,提供了神经网络…

[实时计算flink]安全访问最佳实践

由于Flink无法提前预知您要使用的上下游系统,当作业需要访问不同的上下游系统来读写数据时,可能需要使用您的AccessKey信息作为访问凭证。主账号的AccessKey具备云账号下资源的全部权限,一旦泄露可能会造成严重后果。本文通过对RAM用户授予相…

pycharm与anaconda下的pyside6的安装记录

一、打开anaconda虚拟环境的命令行窗口,pip install,加入清华源: pip install PySide6 -i https://pypi.tuna.tsinghua.edu.cn/simple 二、打开pycharm,在文件--设置--工具--外部工具中配置一下三项: 1、 QtDesigner…

Java常用任务调度

JAVA 任务调度技术 前言 在日常开发过程中,我们经常会遇到周期性执行某段代码的场景。比如定期同步订单,定期更新商品信息,定期发送消息等。这些重复执行的代码可以抽象为一个任务(Task)。 一个Task的特点如下: 包含需要执行的业…

将多个commit合并成一个commit并提交

0 Preface/foreword 1 压缩多个commit方法 1.1 git merge --squash 主分支:main 开发分支:test 当前在test分支提交了8个commits,功能已经开发完成,需要将test分支合并到main分支,但是不想在合并时候,看…

开源一套基于若依的wms仓库管理系统,支持lodop和网页打印入库单、出库单的源码

大家好,我是一颗甜苞谷,今天分享一款基于若依的wms仓库管理系统,支持lodop和网页打印入库单、出库单的源码。 前言 在当今快速发展的商业环境中,库存管理对于企业来说至关重要。然而,许多企业仍然依赖于传统的、手动…

【Rust】环境搭建

▒ 目录 ▒ 🛫 导读需求 1️⃣ 安装Chocolatey安装依赖 2️⃣ 安装RustRover安装toolchain(rustup、VS)重启配置生效设置安装插件 📖 参考资料 🛫 导读 需求 重装系统,记录下环境搭建遇到的问题。 1️⃣ …

安装Ubuntu系统

打开vmware,新建一个Ubuntu虚拟机,点击自定义,进入下一步 ,选择Workstation 17.x后,点击下一步 选择稍后安装系统选项,进入选择客户机操作系统页面,客户机操作系统选择Linux,版本选…

rom定制系列------红米note8_miui14安卓13定制修改固件 带面具root权限 刷写以及界面预览

💝💝💝红米note8机型代码:ginkgo。高通芯片。此固件官方最终版为稳定版12.5.5安卓11的版本。目前很多工作室需要高安卓版本的固件来适应他们的软件。并且需要root权限。根据客户要求。修改固件为完全root。并且修改为可批量刷写的…

了解一下,RN中怎么加载 threejs的

在React Native(RN)中加载和使用Three.js,一个流行的3D图形库,通常需要一些额外的步骤,因为Three.js主要是为Web浏览器设计的,而React Native则使用原生的渲染引擎。不过,有一些方法可以在React…

电脑仅一个C盘如何重装系统?超简单教程分享!

当我们的电脑仅配备一个C盘时,重装系统的过程可能会显得尤为棘手。因为一旦格式化硬盘,安装系统的分区也可能被一并清除,导致安装过程中断。这时候我们完全可以通过对电脑进行分区来解决这一问题。分区不仅能够帮助我们更好地管理硬盘空间&am…

提升网站速度与性能优化的有效策略与实践

内容概要 在数字化快速发展的今天,网站速度与性能优化显得尤为重要,它直接影响用户的浏览体验。用户在访问网站时,往往希望能够迅速获取信息,若加载时间过长,轻易可能导致他们转向其他更为流畅的网站。因此&#xff0…