文档章节

linux中gcc库文件的相关问题

1987times
 1987times
发布于 2014/06/06 11:25
字数 295
阅读 26
收藏 0
最近在ubuntu上使用线程出现了不少问题,也学习了不少东西。总结下


当我们在使用POSIX Thread的时候,只要在编译的时候加上-lpthread选项就可以了.这是因为POSIX Thread就在LIBRARY PATH中,但是我使用-lboost_system,不行。我想难道我的boost没有在LIBRARY_PATH中吗。我使用gcc --print-search-dir来查看发现/usr/local/lib还真不在LIBRARY_PATH下面。所以在/etc/profile中添加了LIBARAY_PATH环境变量加入了这个路径。




LIBRARY_PATH:   gcc build time environment parm. 就是gcc编译期的环境变量,指定库路径.
LD_LIBRARY_PATH: gcc runtime environment parm. gcc运行期的环境变量,.....
gcc在build time的时候是不会去搜索LD_LIBRARY_PATH的,所以找不到boost,可以通过-L来指定库的地址


gcc  -I(大写i) -L(大写l) -l(小写l)的区别
-I(大写i):指定头文件的搜索目录
-L(大写l):指定库文件的搜索目录
-l(小写l): 在上面的库文件目录中寻找动态库文件  -ltest 需要libtest.so动态库文件,如果加入了-static那么寻找libtest.a文件

© 著作权归作者所有

共有 人打赏支持
1987times
粉丝 3
博文 57
码字总数 17894
作品 0
广州
程序员
私信 提问
FW: gcc编译时对'xxxx'未定义的引用问题

gcc编译时对'xxxx'未定义的引用问题 发布时间:2015-12-23 15:54:05来源:linux网站作者:乌合之众 在使用gcc编译的时候有时候会碰到这样的问题,编译为.o(obj) 文件没有问题,但是编译(这一步应...

SamXIAO
02/09
0
0
Windows 下64位TDM-GCC-64 g++自定义库的生成及使用

一、自定义库的生成 生成szlib.o文件: 生成libszlib.a文件: 查看库文件中的函数: 解决方法: 环境:Windows 2016 cmd 参考: undefined reference to `std::ios_base::Init::Init() https:...

SamXIAO
02/09
0
0
28.Android Studio下FFmpeg的编译和使用(二.Ubunto系统环境配置)

项目源码 FFmpeg开发文档 编译过程中涉及到很多ndk中的so库和头文件以及交叉编译的工具,在命令执行的时候会在ndk相应的目录下去查找,所以我们可以使用export命令事先将这些路径设置到环境变...

黑夜路口
2018/09/26
0
0
关于Linux静态和动态链接库的创建及使用

和Windows系统一样Linux也有静态/动态链接库,下面介绍创建和使用方法: 假设有下面几个文件: 头文件String.h,声明相关函数原形,内容如下: Strlen.c:函数Strlen的实现,获取给定字符串的...

zt371
2009/05/08
581
0
解读:在命令情况下使用Android NDK交叉编译工具

我们知道,在Linux下可以使用gcc来把一份C代码编译成为Linux上的可执行程序, 如: $ gcc -o main.out main.c 而Android平台提供了NDK工具包来交叉编译可以运行于Android系统中的应用程序,它需要...

科技创造
2015/10/29
828
0

没有更多内容

加载失败,请刷新页面

加载更多

matlab-自控原理 step、impulse 阶跃、脉冲响应 已知传递函数

  matlab : R2018a 64bit     OS : Windows 10 x64 typesetting : Markdown    blog : my.oschina.net/zhichengjiu    gitee : gitee.com/zhichengjiu   已知传递函数,求其阶跃响应......

志成就
30分钟前
1
0
JDBC事务操作

事务特点:ACID 原子性(Atomicity):事务管理的系列操作必须全部完成,否则就算失败(类似操作系统的PV原语、信号量) 一致性(Consistency):同一个事务只要起始条件一致最终执行的结果一致 隔...

ZeroneLove
32分钟前
0
0
【scala】3.数组相关操作

简介 在本章中,我们将会学到如何在scala中操作数组。 1、定长数组 // 初始化长度为10的定长数组,每一个元素的值为0val nums = new Array[Int](10)// nums: Array[Int] = Array(0, 0, 0, ...

Areya
33分钟前
2
0
教你零基础如何快速入门大数据技巧

现在是大数据时代,很多人都想要学习大数据,因为不管是就业前景还是薪资都非常的不错,不少人纷纷从其他行业转型到大数据行业,那么零基础的人也想要学习大数据怎么办呢?下面一起探讨下零基...

董黎明
41分钟前
1
0
Nginx 配置 root目录、虚拟目录alias

Nginx是通过 alias 设置虚拟目录,在Nginx的配置中,alias目录和root目录是有区别的。 alias指定的目录是准确的,即location匹配访问的path目录下的文件直接是在alias目录下查找的; root指定...

Yue_Chen
58分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部