gcc 指定动态连接路编译时路径和运行时路径

转载 2015年07月10日 16:24:06

http://blog.sina.com.cn/s/blog_9720724f0101eyl7.html

 

 

gcc -L选项在链接时指定动态库路径,编译通过,但是执行时会找不到路径;

gcc -Wl -rpath选项在运行时指定路径,运行时按照指定路径寻找动态库;

也就是说处理动态链接库时有2个路径:链接时路径和运行时路径,2个路径是分开的;

如:

 $(CC) -o $@ $^ -L/home/db2 -lfinger_client -Wl,-rpath=/home/db2

 


下面是别人测试的结果:动态库的搜索路径搜索的先后顺序是:

1. 编译目标代码时指定的动态库搜索路径;
2. 环境变量 LD_LIBRARY_PATH 指定的动态库搜索路径;
3. 配置文件 /etc/ld.so.conf 中指定的动态库搜索路径;
4. 默认的动态库搜索路径 /lib ;
5. 默认的动态库搜索路径 /usr/lib

 

相关文章推荐

gcc指定头文件路径及动态链接库路径

gcc指定头文件路径及动态链接库路径   本文详细介绍了linux 下gcc头文件指定方法,以及搜索路径顺序的问题。另外,还总结了,gcc动态链接的方法以及路径指定,同样也讨论了搜索路径的...

gcc/g++使用第三方库时添加头文件路径和库文件路径的方法

本文总结了使用第三方库函数时将其路径告诉编译器(gcc和g++同理)的2种常用方式,并举例说明了每种方式的具体用法。...

使用gcc时头文件路径和动态链接库路径

在使用gcc编译连接生成可执行文件时,经常会碰到变量未定义、链接时或者运行可执行文件时找不到相应的动态库等问题,本文首先介绍了gcc在编译时头文件路径相关选项以及搜索路径顺序,然后讨论了编译成可执行文...

gcc指定库路径,头文件路径以及实现静态动态链接 .

在Linux 下开发软件时,完全不使用第三方函数库的情况是比较少见的,通常来讲都需要借助一个或多个函数库的支持才能够完成相应的功能。从程序员的角度看,函数库实 际上就是一些头文件(.h)和库文件(.s...

GCC 命令行详解 -L 指定库的路径 -l 指定需连接的库名

http://blog.chinaunix.net/uid-26588712-id-3053955.html 1. 为什么会出现undefined reference to 'xxxxx'错误? ...

Linux下so动态库查看与运行时搜索路径的设置

ldd命令linux 下可以使用ldd查看可执行文件所需要的动态链接库(*.so)。 注:下文用so代替动态链接库文件。// 举个例子 ~$ ldd /bin/ls linux-vdso.s...

linux下gcc默认搜索头文件及库文件的路径

linux下gcc默认搜索头文件及库文件的路径 一、头文件 gcc 在编译时如何去寻找所需要的头文件: ※所以header file的搜寻会从-I开始 ※然后找gcc的环境变量 C_INCLU...

查看gcc/g++默认include路径

`gcc -print-prog-name=cc1plus` -v `g++ -print-prog-name=cc1plus` -v
  • langsim
  • langsim
  • 2016年02月12日 11:48
  • 611

Linux指定动态库路径

linux指定动态库路径包括:1.指定编译时动态库路径;2.指定运行时动态库路径。后文提到的动态库路径都是指的是这两种路径。众所周知,Linux动态库的默认搜索路径是/lib和/usr/lib(不管是...

动态链接库的路径及依赖

参考资料 [1]linux下,怎么用shell命令或脚本查看.so文件里面的所有函数名 [2]linux下查看动态链接库so文件的依赖的相关组建 [4]linux下so动态库一些不为人知的秘密(中) ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:gcc 指定动态连接路编译时路径和运行时路径
举报原因:
原因补充:

(最多只允许输入30个字)