为pkg-config提供* .pc文件

时间:2015-10-10 05:05:57

标签: pkg-config fedora-21

您好我的新安装的Fedora Linux发行版有问题。 pkg-config应该提供链接器标志,类似于pkg-config --cflags libboost-dev。但是pkg-config找不到大多数库包。 pkg-config --list-all表明它只能找到几个包。

我在网上搜索并了解到pkg-config通过在预先定义的路径中搜索* .pc文件来查找包。但是对于大多数软件包(预安装和用户安装),都没有这样的.pc文件。因此,每次安装软件包时都不会生成* .pc文件。

1,如何为已安装的每个软件包提供.pc文件? 2,如何确保每次安装新软件包时都会提供.pc文件?

1 个答案:

答案 0 :(得分:1)

Fedora packaging guidelines提供有关应该创建包的方式以及它们应包含的文件的信息。

关于-devel packages的部分特别相关。

突出显示某些部分

  

有些类型的文件几乎总是属于-devel包:

     
      
  • 头文件(foo.h),通常位于/ usr / include
  • 中   
  • 当程序包未提供任何匹配的共享库文件时的静态库文件。有关此方案的详细信息,请参阅Packaging:Guidelines#Packaging_Static_Libraries
  •   
  • Unversioned共享系统库文件,当存在匹配的版本化共享系统库文件时。
  •   

在下一节中,关于Pkgconfig Files,该页面会通知读者

  

pkgconfig(.pc)文件的位置取决于它们的用例。由于它们几乎总是用于开发目的,因此应将它们放在-devel包中。

     

一个合理的例外是主包本身是未安装在用户运行时的开发工具,例如gcc或gdb。

因此,为了将头文件提供给#include.pc文件来告诉编译器标志,您需要xyz-devel包,其中xyz }是标准包的名称。

如果您不想/不想猜测它们,那么找到要安装的软件包的相应名称的有用网站是Fedora Packages search page