Ubuntu下顺利交叉编译ZeroMQ过程记录总结

一. 下载libzmq源码包:

download libzmq

二. 交叉编译过程

  • 首先在Ubuntu上解压下载的源码包,里面会出现一堆文件及文件夹,其中重点看这几个:autogen.sh、install、README。以下直接讲编译步骤。
  • 在autogen.sh文件所在文件夹空白处右击,打开命令窗口,交叉编译需要修改配置文件configure,但是默认源码里是没有这个文件的,所以需要生成一下;
  • 输入以下命令 , 回车:
./autogen.sh 
  • 此时可能会报错,提示一般都是缺少一些工具,如libtool等,实际上可能缺不止一个的工具,提示只列出来一种,不去管它,直接输入以下3个命令,把缺的都安上:
1. sudo apt-get install libtool
2. sudo apt-get install autoconf
3. sudo apt-get install automake

这三个命令前后顺序按照你执行命令给的提示先后输入就行。

  • 执行完安装好后再次输入 ./autogen.sh命令;之后就可以看到生成了configure文件

./configure配置
使用./configure -h查看文档。
对于交叉编译,主要就是有三个参数:–build --host --target
–build参数是指你编译源码包的系统环境,可以通过查看系统的环境变量来获取,执行set命令可以看到 MACHTYPE=i686-pc-linux-gnu,则–build=i686-pc-linux-gnu
–host参数指的是编译出来的工具运行在什么系统上
–target参数指的是编译出的工具所要操作的系统,譬如说在虚拟机上编译gdb,这个gdb需要查看的是arm开发板的core文件(在虚拟机上查看),这个必须要理解明白,比如说我编译出来的gdb要在我的电脑上运行,但是要调试交叉编译出来的arm指令集的程序,这个时候呢,–target就要是arm-linux,但是–host是i686-pc-linux-gnu。

摘自 https://blog.csdn.net/m0_37570820/article/details/105776694

  • 即这里我们要修改configure文件,配置一些东西如下:
./configure --build=x86_64-pc-linux-gnu --host=arm-linux --target=arm-linux --prefix=/opt/arm-zeromq/ --without-libsodium
  • 执行上述命令结束后,再次输入下面两个命令:
make
make install

你所需要的exe、lib、及include文件夹都已经生成并且存放在路径 opt/arm-zeromq下了。怎么找?

点击左侧边栏的计算机选项,所有根目录下的文件夹都显示在这里,一眼就可以看到。

至此,交叉编译源码包完美结束。

tips:其实原理不难,普通的工程库/exe编译很简单,只是zeromq相对多一点步骤,我也是卡住查了好多资料慢慢成功的。加油,祝每一位看到这里的人,前程似锦,未来可期。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值