Linux 打包可执行程序与SDK的所有依赖的so库

1.查询依赖so库

查询动态库依赖的so库

ldd  libXXX.so
ldd  yourExe

2.拷贝依赖库到指定目录

首先根据ldd查询依赖的so库,将依赖的so库拷贝到指定文件夹

ldd your_server | awk '{print $3}' | xargs -i cp -L {} /home/name/bin/

3.添加依赖库的指定路径

#env.sh  指定当前路径为库的查找路径
export LD_LIBRARY_PATH=`pwd`:$LD_LIBRARY_PATH

4.pkg-config

pkg-config是一个linux下的命令,用于获得某一个库/模块的所有编译相关的信息。

#可以看到其输出是gtk的头文件的路径
pkg-config --cflags gtk+-2.0
gcc main.c `pkg-config --cflags --libs gtk+-2.0` -o main
#上面的编译命令中,`pkg-config --cflags --libs gtk+-2.0`的作用就如前面所说的,把gtk的头文件路径和库文件列出来,让编译去获取。--cflags和--libs分别指定头文件和库文件。
#PS:命令中的`不是引号,而是数字1左边那个键位的那个符号。

因为pkg-config也只是一个命令,所以不是你安装了一个第三方的库,pkg-config就能知道第三方库的头文件和库文件所在的位置。pkg-config命令是通过查询XXX.pc文件而知道这些的。我们所需要做的是,写一个属于自己的库的.pc文件。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值