三方库移植

再说一下三方库移植,为什么要移植三方库呢,因为很多时候开发为了节省时间需要调用其他的库函数,但是很多库不像之前的cJSON和sqlite3等这种非常知名的库会提供deb,只提供源码,所以如果要在linux和arm上使用就需要用到三方库移植,三方库的移植步骤:

    1.先在官网或者git获取该库的源码压缩包

    2.解压并进入目录

  3.创建一个空的install文件夹便于安装

    4.配置编译选项,一般源码目录下有configure   

--host:指定编译器 --prefix:指定安装目录

      

  ./configure --prefix=$PWD/work

如果是交叉编译,给ARM板用,配置选项如下

./configure --host=arm-linux- --prefix=$PWD/work

还有的库是使用cmake,比如MQTT

cmake -DCMAKE_INSTALL_PREFIX=/xxx/paho.mqtt.c-1.3.0/install(xxx代表你自己的路径)

     5.配置完后会生成Makefile文件,然后make

     6.make install 执行Makefile里的install部分

     7.这时如果你想使用该库的代码并编译是会报错的,因为gcc命令需要加上路径

  

   gcc main.c -o demo -I  ./include(源码的include文件夹) -L ./lib/ -l xxx(注释1)

注释1: -l后的名称不能随便写,应该找到该库的so文件,去掉前面的lib和后面的so

     8.再运行发现还是报错,这时因为系统默认查找路径  /lib或/usr/lib没有刚才的so文件

     所以应该将so文件软连接复制到默认路径中,复制加-d 保持软连接复制

  

    cp  libxxx.so* /lib -d

     9.再运行就可以了

上一篇:HTML5本地缓存数据


下一篇:Flask-Cache 缓存带参数的url