linux下SO文件编译指定其他依赖库的路径

rpath 全称是run-time search path,规定了Linux下可执行文件在寻找.so文件时的第一优先位置。比如我们想要指定可执行文件运行优先在当前目录下寻找.so 文件,则使用gcc/g++编译时加上以下选项:

复制代码
-Wl,--disable-new-dtags,-rpath,'$$ORIGIN'

$ORIGIN表示so文件当前的存放目录,其他依赖库和要编译的so库放在同一级目录。

其中-Wl参数用来将GCC的命令行参数传递给ld命令。

--disable-new-dtags表示使用的是rpath,去掉后编译器默认使用runpath。

相关推荐
用户9718356334662 小时前
银河麒麟 KY10 申威(SW64) 安装 nginx-1.16.1-2.p01.ky10.sw_64.rpm 详细步骤
linux
猪脚踏浪3 小时前
linux 拷贝文件或目录到指定的位置
linux
大树8819 小时前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠19 小时前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
霸道流氓气质20 小时前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务
bush420 小时前
嵌入式linux学习记录十四、术语
linux·嵌入式
载数而行52020 小时前
Linux 11 动态监控指令top
linux
小宇宙Zz20 小时前
Maven依赖冲突
java·服务器·maven
Inhand陈工21 小时前
基于台达PLC与映翰通IG502的智慧水产养殖精准投喂与远程运维解决方案
运维·人工智能·物联网·阿里云·信息与通信
酣大智21 小时前
ARP代理--工作原理
运维·网络·arp·arp代理