编译开源软件的一个问题----pkg-config找不到库

一般编译开源软件的第一步都是运行./configure,确定编译软件需要的命令或者库在系统中都能找到,然后再运行./make去编译。

但是运行./configure有时候会报错,说需要的库找不到,而设置LD_LIBRARY_PATH后还是可能找不到库(如何设置参见这篇博客)。

找不到库的原因是./configure里面调用了另外一个程序:pkg-config,这个程序负责在.pc后缀的文件中找库的信息,比如库的名字是libfoo.so*,那么pkg-config就会在libfoo.pc这个文件中去找库的路径。

但是pkg-config去哪里找.pc文件呢?这里又涉及了一个路径:PKG_CONFIG_PATH,和设置其他路径的方法一样(参见上面那篇博客),设置好以后就可以找到库了。


参考文献:

The art of debugging with gdb,ddd, and eclipse. Norman Matloff and Peter Jay Salzman. 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Windows下的pkg-config一个用于管理和使用编译时和链接时的依赖项的程序。它最初是为Linux和类Unix系统开发的,但也被移植到了Windows上。 pkg-config可以帮助开发人员轻松地查和安装所需的。它为开发人员提供了一种简单的方式来指定和管理程序所需的依赖项。这对于跨平台开发和移植软件非常有用,因为不同的操作系统可能需要不同的。 使用pkg-config,开发人员可以在编译和链接时引用已安装的,而不必手动指定包含路径、编译选项等等。这极大地简化了软件开发的过程,并减少了错误和编译问题的可能性。 需要注意的是,Windows下的pkg-config需要和一些一起使用,如Cygwin和MinGW等。此外,它也可能与一些IDE不兼容,如Visual Studio。 总之,pkg-config一个非常有用的工具,可以方便地管理和使用编译时和链接时的依赖项,从而简化了软件开发的过程。 ### 回答2: Windows的pkg-config一个命令行工具,用于帮助开发人员在Windows上查和链接文件。它通常用于Unix系统中,但在Windows上也可以使用它。 使用pkg-config可以告诉编译的位置,将需要的文件链接到编译器的命令中。如果没有正确链接文件,则编译器会报错并停止编译过程。 为了在Windows上使用pkg-config,首先需要安装MinGW和MSYS环境。然后将pkg-config文件夹添加到环境变量中,以便在命令行中访问它。接下来,开发人员需要在代码中包含所需文件的路径,并调用pkg-config命令来查询和链接文件。 总体而言,pkg-config在Windows开发过程中是一个非常有用的工具,可以简化开发人员查和链接文件的过程。 ### 回答3: Windows pkg-config一个用于管理编译参数的工具,主要用于在Windows系统上编译和链接第三方。它可以帮助开发者轻松地管理的版本和依赖关系,减少编译和链接错误。这个工具最初是为Linux系统设计的,但是现在它已经过渡到了Windows平台上,被广泛应用于各种开发工具中。 Windows pkg-config使用一个名为.pc的配置文件,该文件描述的元数据信息。使用这个配置文件,开发人员可以获得有关的版本、包含头文件和文件的路径、编译和链接选项等信息。在Windows系统上使用pkg-config需要安装该工具,并将其包含路径添加到编译器中。 使用pkg-config可以帮助开发人员更好地管理第三方,尤其是对于包含多个文件的大型。通过pkg-config,可以轻松地检查文件的版本和依赖关系,并在编译和链接时使用正确的文件。这个工具可以增强代码的可移植性和可维护性,并减少代码错误和重复工作。因此,pkg-config被广泛应用于各种开发环境中,无论是开源项目还是商用软件。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值