问题:Linux拷贝程序或so依赖的所有库脚本
环境:
系统:centos7.5
环境:
问题分析:
Linux下写程序经常碰到需要copy程序或者so到其他环境使用,会有很多依赖库需要拷贝,使用脚本可以轻松实现
解决步骤:
一、脚本如下:
vim copy_so.sh
!/bin/sh
so_list=$( ldd $1 | awk '{if (match($3, "/")){ print $3}}' )
cp -L -n $so_list $2
# -L表示拷贝,软链接会直接copy最终文件
# -n表示不覆盖已有文件
二、使用方式:
以libtest.so为例
sh ./copy_so.sh libtest.so ./so_dir
参数一是需要ldd的执行文件或者so, 参数二是拷贝到的文件夹。
tips:
如果脚本执行失败,需要先给程序或者so添加执行权限。chmod +x libtest.so
Linux自动化拷贝程序及其依赖库脚本
本文介绍了一个Linux脚本,用于一键拷贝程序或动态链接库(so文件)及其所有依赖库到指定目录。脚本通过ldd命令获取依赖库,并使用cp命令进行拷贝,方便在不同环境间迁移程序。执行脚本前需确保程序或so具有执行权限。
2381

被折叠的 条评论
为什么被折叠?



