首页 > 系统服务 > 详细

linux下将可执行程序进行打包

时间:2020-08-28 23:30:57      阅读:153      评论:0      收藏:0      [点我收藏+]

1. 可执行文件 mpirun

2. ldd命令查看需要的依赖库

3. 将ldd查询到的所有需要的库导出

    脚本文件:

可以使用脚本cp.sh将ldd打印出来的依赖库复制到指定路径,cp.sh内容如下:

#!/bin/sh

exe="mpirun" #发布的程序名称

des="./lib" #你的路径(lib文件夹需要自己创建)

deplist=$(ldd $exe | awk {if (match($3,"/")){ printf("%s "),$3 } })

cp $deplist $des

4. 编写.sh文档并将它放在与步骤3同一目录下(.sh文件命名必须与可执行文件名字一样)

.sh文件代码如下:

#!/bin/sh

appname=`basename $0 | sed s,\.sh$,,`

dirname=`dirname $0`

tmp="${dirname#?}"

if [ "${dirname%$tmp}" != "/" ]; then

dirname=$PWD/$dirname

fi

LD_LIBRARY_PATH=$dirname

export LD_LIBRARY_PATH

$dirname/$appname "$@"

执行:

./mpirun.sh --version

注:

ldd 可能无法将所有环境运行的相关库文件导出,库文件还有其他的库文件依赖

若是有相关库文件却找不到,可以去添加配置文件 sudo vim /etc/ld.so.conf.d/*.conf  或者添加环境变量

可参考:https://www.cnblogs.com/x_wukong/p/4722903.html

报错:

技术分享图片

/usr/bin/ld cannot find 解决:https://blog.csdn.net/mzwang123/article/details/6702889

缺少相关库文件

参考文档:https://blog.csdn.net/tingy123/article/details/99707581

linux下将可执行程序进行打包

原文:https://www.cnblogs.com/yu121/p/13580128.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!