gcc库文件和头文件搜索路径

更新时间:2023-05-28 06:51:49 阅读: 评论:0

践行社会责任-长春攻略

gcc库文件和头文件搜索路径
2023年5月28日发(作者:600字作文初中)

gcc库⽂件和头⽂件搜索路径

⼀、compile-time库⽂件搜索路径

1.如果编译时指定了-L选项,就优先到-L指定的路径去查找库进⾏连接;

2.查找GCC的环境变量LIBRARY_PATH

3.到/bin /usr/lib /usr/local/lib去查找。这⼏个搜索路径在gcc下是默认的。

所以当我们要让⾃⼰添加的库⽂件让gcc能搜索到,有两种⽅法,⼀种就是⽤-L指定,⼀种就是将库复制到以上⼏个gcc默认搜索路径。

⼆、run-time库搜索路径

1.编译时⽤-Wl, -rpath指定的路径

Ex:

arm-none-linux-gnueabi-gcc -o helloword_arm helloword.c -Wl,-dynamic-linker=/system/lib/.3,-rpath,/system/lib/

2.环境变量LD_LIBRARY_PATH指定的路径

3./etc/指定的路径

4.默认的动态搜索库路径/lib /usr/lib

LIBRARY_PATH和LD_LIBRARY_PATH是Linux下的两个环境变量,⼆者的含义和作⽤分别如下:

LIBRARY_PATH环境变量⽤于在程序编译期间查找动态链接库时指定查找共享库的路径,例如,指定gcc编译需要⽤到的动态链接库的⽬录。设

置⽅法如下(其中,LIBDIR1和LIBDIR2为两个库⽬录):

export LIBRARY_PATH=LIBDIR1:LIBDIR2:$LIBRARY_PATH

LD_LIBRARY_PATH环境变量⽤于在程序加载运⾏期间查找动态链接库时指定除了系统默认路径之外的其他路径,注意,LD_LIBRARY_PATH

中指定的路径会在系统默认路径之前进⾏查找。设置⽅法如下(其中,LIBDIR1和LIBDIR2为两个库⽬录):

export LD_LIBRARY_PATH=LIBDIR1:LIBDIR2:$LD_LIBRARY_PATH

举个例⼦,我们开发⼀个程序,经常会需要使⽤某个或某些动态链接库,为了保证程序的可移植性,可以先将这些编译好的动态链接库放在⾃⼰指

定的⽬录下,然后按照上述⽅式将这些⽬录加⼊到LD_LIBRARY_PATH环境变量中,这样⾃⼰的程序就可以动态链接后加载库⽂件运⾏了。

区别与使⽤:

开发时,设置LIBRARY_PATH,以便gcc能够找到编译时需要的动态链接库。

发布时,设置LD_LIBRARY_PATH,以便程序加载运⾏时能够⾃动找到需要的动态链接库。

三、⼏个重要的命令

1)ldd bin_name

可以查看编译出来的可执⾏⽂件依赖的库。部署程序时,我们要把这些库拷贝出来,然后将这些库连同可执⾏⽂件拷贝到新的机器上,

在/etc/.d下添加对应的库⽂件搜索路径即可。

ig命令

搜索/lib和/usr/lib以及/etc/下列出来的所有路径的库,然后创建动态库的cache⽂件。当程序需要搜索库时就会搜索⾥列

出来的库。

所以当我们向系统添加新的库⽂件时,除了需要把库⽂件烤到/usr/local/lib等指定位置外,还需ldconfig⼀下来更新cache⽂件。

四、gcc头⽂件的搜索路径

1.优先搜索-I指定的路径

2.查找GCC的环境变量C_INCLUDE_PATH/CPLUS_INCLUDE_PATH/OBJC_INCLUDE_PATH指定的路径

3.查找默认的搜索路径/usr/include /usr/local/include

所有GCC的环境变量,我们都可以GCC的原有搜索路径上上⾯添加进我们⾃⼰的路径,例如

#增加.so搜索路径

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home//lib

#增加.a搜索路径

LIBRARY_PATH=$LIBRARY_PATH:/home/lib

#增加bin搜索路径

export PATH=$PATH:/home/bin

#增加GCC的include⽂件搜索路径

export C_INCLUDE_PATH=$C_INCLUDE_PATH:/home/include

-wall -pedantic

-wall编译时显⽰所有的警告信息,可以增加程序的健壮性和可移植性

-pedantic,以符合ANSI/ISO C 标准列出所有警告

精神实质-伏天

gcc库文件和头文件搜索路径

本文发布于:2023-05-28 06:51:47,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/zhishi/a/1685227909177943.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:gcc库文件和头文件搜索路径.doc

本文 PDF 下载地址:gcc库文件和头文件搜索路径.pdf

标签:ldconfig
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 实用文体写作网旗下知识大全大全栏目是一个全百科类宝库! 优秀范文|法律文书|专利查询|