zoukankan      html  css  js  c++  java
  • linux 下 交叉编译 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。

  • 相关阅读:
    [转发]深入理解git,从研究git目录开始
    iOS系统网络抓包方法
    charles抓包工具
    iOS多线程中performSelector: 和dispatch_time的不同
    IOS Core Animation Advanced Techniques的学习笔记(五)
    IOS Core Animation Advanced Techniques的学习笔记(四)
    IOS Core Animation Advanced Techniques的学习笔记(三)
    IOS Core Animation Advanced Techniques的学习笔记(二)
    IOS Core Animation Advanced Techniques的学习笔记(一)
    VirtualBox复制CentOS后提示Device eth0 does not seem to be present的解决方法
  • 原文地址:https://www.cnblogs.com/skycandy/p/9475714.html
Copyright © 2011-2022 走看看