如何使用第三方库?

软件和网站开发以及相关技术探讨
回复
sarrow
帖子: 403
注册时间: 2007-10-27 1:04

如何使用第三方库?

#1

帖子 sarrow » 2012-03-24 15:49

一直为ubuntu下的第三方库的使用头痛。

如果,写一个自己的库的话,需要作一些说什么工作?指bin、lib、include等文件夹,信息,如何提供给系统知道?

需要自己写一个,xxx-config工具,放在/usr/bin下面吗?

还是将export LD_FLAGS=$xxxx;$LDFLAGS这样的语句放进.bashrc里面?

比如,我试着编译osdlyrics。./configure 给我的提示是找不到libcurl。但是,apt-get install 又告诉我,已经安装了libcurl。我看一下./configure,发现里面是通过调用
pkg-config --exists --print-error "libcurl"的方式来检查的。

不知道,问题具体出在什么地方。

另外,好像在/etc下面,还有一个文件夹,叫 xxx.d,专门用来保存第三方库的lib文件夹位置。

我就像知道,ubuntu下面的编译环境,到底是怎么找各种库的所需要的文件的位置的?谁能提供一点详细的资料什么的?
tusooa
帖子: 6548
注册时间: 2008-10-31 22:12
系统: 践兔
联系:

Re: 如何使用第三方库?

#2

帖子 tusooa » 2012-03-24 15:52

放到path里就行了。比如/usr/local/...

代码: 全选

] ls -ld //
头像
枫叶饭团
帖子: 14683
注册时间: 2010-06-16 1:05
系统: Mac OS X
来自: Tencent
联系:

Re: 如何使用第三方库?

#3

帖子 枫叶饭团 » 2012-03-24 16:02

/usr/include /usr/bin 等等。。
sarrow
帖子: 403
注册时间: 2007-10-27 1:04

Re: 如何使用第三方库?

#4

帖子 sarrow » 2012-03-24 17:29

那楼上两位,pkg-config提示找不到libcurl;而sudo apt-get install libcurl又说libcurl已经安装,并且是最新版。这个问题出在何处呢?

下面摘自osdlyrics的configure:
$PKG_CONFIG --exists --print-errors "libcurl"
sarrow
帖子: 403
注册时间: 2007-10-27 1:04

Re: 如何使用第三方库?

#5

帖子 sarrow » 2012-03-24 18:32

libcurl的问题解决了。

需要安装一个叫libcurl4-gnutls-dev的东西——不过,就名字来看,实在弄不懂libcurl和libcurl4-gnutls-dev的关系。蛋疼。

----------------------------------------------------------------------

另外,其实,我像知道的不是如何写xxx-config。

因为,xxx-config 无非就是,要么修改环境变量,或者提供一个如-I/usr/include的参数,给编译器。条条大路通罗马,具体可以有很多的做法。

所以,怎么写xxx-config,把xxx-config往什么地方扔,也不重要。

重要的是,比如gnu-gcc编译器组件,是如何工作的?比如,gcc和g++会找CPATH环境变量;ld会找LIBRARY_PATH环境变量;

另外,ubuntu系统是如何组织编译所需要的文件的?
/etc/ld.so.conf.d/libc.conf这个文件又有什么作用?
回复