问题:Linux拷贝程序或so依赖的所有库脚本

本文介绍了一个Linux脚本,用于一键拷贝程序或动态链接库(so文件)及其所有依赖库到指定目录。脚本通过ldd命令获取依赖库,并使用cp命令进行拷贝,方便在不同环境间迁移程序。执行脚本前需确保程序或so具有执行权限。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题: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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值