c make libxml2和mqttlib交叉编译

libxml2:

源码:ftp://xmlsoft.org/libxml2/libxml2-git-snapshot.tar.gz

export PATH=/opt/gcc-4.4.4-glibc-2.11.1-multilib-1.0/arm-fsl-linux-gnueabi/bin/:$PATH

./configure  --prefix=/opt/libxml2armchangyang/ CC=arm-fsl-linux-gnueabi-gcc CXX=arm-fsl-linux-gnueabi-g++ AS=arm-fsl-linux-gnueabi-as RANLIB=arm-fsl-linux-gnueabi-ranlib  --without-zlib  --without-python

提示 ./libtool中arm-fsl-linux-gnueabi-gcc 不可用

改为

./configure  --prefix=/opt/libxml2armchangyang/ CC=/opt/gcc-4.4.4-glibc-2.11.1-multilib-1.0/arm-fsl-linux-gnueabi/bin/arm-fsl-linux-gnueabi-gcc CXX=/opt/gcc-4.4.4-glibc-2.11.1-multilib-1.0/arm-fsl-linux-gnueabi/bin/arm-fsl-linux-gnueabi-g++ AS=/opt/gcc-4.4.4-glibc-2.11.1-multilib-1.0/arm-fsl-linux-gnueabi/bin/arm-fsl-linux-gnueabi-as RANLIB=/opt/gcc-4.4.4-glibc-2.11.1-multilib-1.0/arm-fsl-linux-gnueabi/bin/arm-fsl-linux-gnueabi-ranlib  --without-zlib  --without-python

提示需要输入--host

改为:

sudo ./configure --host=arm-fsl-linux --prefix=/opt/libxml2armchangyang/ CC=/opt/gcc-4.4.4-glibc-2.11.1-multilib-1.0/arm-fsl-linux-gnueabi/bin/arm-fsl-linux-gnueabi-gcc CXX=/opt/gcc-4.4.4-glibc-2.11.1-multilib-1.0/arm-fsl-linux-gnueabi/bin/arm-fsl-linux-gnueabi-g++ AS=/opt/gcc-4.4.4-glibc-2.11.1-multilib-1.0/arm-fsl-linux-gnueabi/bin/arm-fsl-linux-gnueabi-as RANLIB=/opt/gcc-4.4.4-glibc-2.11.1-multilib-1.0/arm-fsl-linux-gnueabi/bin/arm-fsl-linux-gnueabi-ranlib --without-zlib --without-python

成功执行

继续

sudo make CC=/opt/gcc-4.4.4-glibc-2.11.1-multilib-1.0/arm-fsl-linux-gnueabi/bin/arm-fsl-linux-gnueabi-gcc CXX=/opt/gcc-4.4.4-glibc-2.11.1-multilib-1.0/arm-fsl-linux-gnueabi/bin/arm-fsl-linux-gnueabi-g++ AS=/opt/gcc-4.4.4-glibc-2.11.1-multilib-1.0/arm-fsl-linux-gnueabi/bin/arm-fsl-linux-gnueabi-as RANLIB=/opt/gcc-4.4.4-glibc-2.11.1-multilib-1.0/arm-fsl-linux-gnueabi/bin/arm-fsl-linux-gnueabi-ranlib

sudo make install

之后去 /opt/libxml2armchangyang/lib 文件夹下找需要的.a文件

生成编译文件只能用于基础的开发 不支持python 和zip的压缩开发 所有需要将所有的包多编译后再进行编译

mosquitto

源码 https://mosquitto.org/files/source/

版本 mosquitto-1.4.15.tar.gz

修改config.mk

WITH_TLS:=no

WITH_TLS_PSK:=no

WITH_THREADING:=yes

WITH_BRIDGE:=yes

WITH_PERSISTENCE:=yes

WITH_MEMORY_TRACKING:=yes

WITH_SYS_TREE:=yes

WITH_SRV:=no

WITH_UUID:=no

WITH_WEBSOCKETS:=no

WITH_EC:=yes

WITH_DOCS:=no

WITH_SOCKS:=yes

再执行

export PATH=/opt/gcc-4.4.4-glibc-2.11.1-multilib-1.0/arm-fsl-linux-gnueabi/bin/:$PATH

make CC=arm-fsl-linux-gnueabi-gcc CXX=arm-fsl-linux-gnueabi-g++ AS=arm-fsl-linux-gnueabi-as RANLIB=arm-fsl-linux-gnueabi-ranlib

sudo make intall

再到lib文件夹下找需要的包

该编译版本去掉了很多乱七八糟的其他复杂功能 ,如果需要,酌情修改config.mk,将那些no的改会yes。

原文地址:https://www.cnblogs.com/skycandy/p/9475714.html

时间: 2024-08-29 14:22:00

c make libxml2和mqttlib交叉编译的相关文章

Openwrt 交叉编译libxml2

系统环境为Ubuntu 12.04.04,配置交叉编译环境使用以下命令即可,具体路径视自己环境而定: ./configure CC=/root/openwrt/staging_dir/toolchain-mipsel_1004kc+dsp_gcc-5.3.0_musl-1.1.14/bin/mipsel-openwrt-linux-gcc CXX=/root/openwrt/staging_dir/toolchain-mipsel_1004kc+dsp_gcc-5.3.0_musl-1.1.14

交叉编译libxml2

请勿用于商业用途,转载请注明出处! xml的优势就是能够方便的管理配置项,libxml2是c语言实现的xml管理库,目前项目需要ARM下的版本,libxml2编译步骤如下: 0.准备工作 下载地址:ftp://xmlsoft.org/libxml2/libxml2-git-snapshot.tar.gz <pre name="code" class="cpp">编译环境:Ubuntu 14.04 TLS 交叉编译器:arm-linux-gnueabihf

更换Qt QtEmbedded库的版本出现问题及解决(交叉编译OpenSSL)

近日将QtEmbedded库的版本由4.7.0更新到4.7.4.工具链并未改变,仍为 Target: arm-none-linux-gnueabiConfigured with: ......Thread model: posixgcc version 4.3.2 (Sourcery G++ Lite 2008q3-72) 所有依赖的库根据需要重新下载最新版本编译.现将在此过程中出现的问题及解决方法列出,以供下次移植时参考. 1.browser程序重新编译,在开发板的命令行运行:./browse

Ubuntu14.04 交叉编译busybox给 Android系统ARM目标板

拿到一个RK3288的开发板,但是不得不说adb shell不太好用,像下面这样太锉了. 于是想着把busybox编译进去. 1. 准备编译环境 其实现在Ubuntu上交叉编译相比之前要简单那很多. 1.1 安装 JDK 6: sudo add-apt-repository ppa:webupd8team/java sudo apt-get update sudo apt-get install oracle-java6-installer 1.2 依赖包: Ubuntu 12.04 软件包安装

libxml2 移植 arm9

准备工作: 1.libxml2软件版本:libxml2-2.6.32.tar.gz 2.交叉编译工具链:arm-none-linux-guneabi 软件安装: 1.设置环境变量: export PATH=/arm-none-linux-guneabi/bin:$PATH (注释: 此处变量为交叉编译工具解压的路径) export ARCH=arm export CROSS_COMPILE=arm-linux 2.解压: tar xvf libxml2-2.6.32.tar.gz 3.进入解压文

交叉编译Mesa,X11lib,Qt opengl

记录Mesa配置文件如下: Mesa版本:Mesa-10.2.3 [html] view plaincopy CC=/usr/local/arm-4.8.1/bin/arm-none-linux-gnueabi-gcc CXX=/usr/local/arm-4.8.1/bin/arm-none-linux-gnueabi-g++ ./configure --prefix=/home/work/DownLoad/Mesa --target=arm-linux --host=arm-linux --

windows平台vs2010编译64位libiconv与libxml2

(一)安装libiconv下载路径https://ftp.gnu.org/pub/gnu/libiconv/注意这里选择libiconv-1.11.1版本,因为之后的版本没有Makefile.msvc文件了.不解...cd D:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\amd64vcvars64.batcd PREFIX=D:\espa-product-formatter\XML2\libiconv-1.11.1nmake

linux 安装交叉编译工具

以arm-linux-gcc-3.4.5-glibc-2.3.6.tar.bz2为例 1.获取要安装的交叉编译工具.(一般芯片厂商提供,也可自行下载) 2.使用tar命令:tar jxvf arm-linux-gcc-3.4.5-glibc-2.3.6.tar.bz2 解压缩安装到当前目录下(tar 后面参数可根据具体压缩格式进行变换) 3.使用find .pwd获取安装路径 进入到上一步解压目录使用find查找bin目录 find . -name bin.如果bin目录下有下面交叉编译工具,表

安装python 第三方库遇到的安装问题 microsoft visual studio c++ 10.0 is required,Could not find function xmlCheckVersion in library libxml2. Is libxml2 installed?

问题一: microsoft visual studio c++ 10.0 is required 安装scrapy时候出现需要vc c++ 10,有时安装其他也会有. 解决方法:安装vc 2010,安装过2017无效,安装过程也不一样. 问题二: 安装好,出现Could not find function xmlCheckVersion in library libxml2. Is libxml2 installed? 解决办法: 1.pip install wheel 2. 到http://