pkg-config

✍ dations ◷ 2025-07-08 00:31:10 #Freedesktop.org,Computer libraries

pkg-config 是一个在源代码编译时查询已安装的库的使用接口的计算机工具软件。pkg-config原本是设计用于Linux的,但现在在各个版本的BSD、windows、Mac OS X和Solaris上都有着可用的版本。

它输出已安装的库的相关信息,包括:

当安装一个库时(例如从RPM,deb或其他二进制包管理系统),会包括一个后缀名为pc的文件,它会放入某个文件夹下(依赖于你的系统设置)。例如,在Linux为该软件的库文件所在文件夹lib之下的子文件夹pkgconfig。并把该子文件夹加入pkg-config的环境变量PKG_CONFIG_PATH作为搜索路径,例如在bash配置文件中加入一行:

 $ export PKG_CONFIG_PATH=/usr/local/`库的名字`/lib/pkgconfig:$PKG_CONFIG_PATH

在这个.pc文件里包含有数个条目。这些条目通常包含用于其他使用这个库的程序编译时需要的库设置,以及头文件的位置,版本信息和一个简介。

这是一个用于libpng的.pc文件的样例:

 
prefix=/usr/local
 exec_prefix=${prefix}
 libdir=${exec_prefix}/lib
 includedir=${exec_prefix}/include
  
 Name: libpng12
 Description: Loads and saves PNG files
 Version: 1.2.8
 Libs: -L${libdir} -lpng12 -lz
 Cflags: -I${includedir}/libpng12

这个文件告诉我们这些库可以在/usr/local/lib找到,头文件可以在/usr/local/include里找到,库的名字是libpng12并且版本号是1.2.8。它也提供了用于编译依赖于libpng的源代码时需要的链接器参数。

这儿是一个编译时使用pkg-config的样例:

相关

  • 景美集应庙景美集应庙,又称双忠庙、尪公庙等。主祀保仪尊王(即尪公),位于台湾台北市文山区景美街37号,现是景美区高姓居民的信仰中心,三级古迹,分香自福建安溪大坪集应庙。主祀双忠,即唐朝安史
  • 斋月赖买丹月(阿拉伯语:رمضان‎,音读:Ramaḍān,意为“禁月”),直译“拉玛丹”和“赖买丹”,或者半意译作“来麦丹”,是伊斯兰历(回历)的第九个月,也是伊斯兰教穆斯林的斋戒月。根据《
  • 艾琳·邓恩艾琳·邓恩(英语:Irene Dunne,1898年12月20日-1990年9月4日)是一位美国电影演员和歌手,活跃在1930、1940和1950年代早期。邓恩曾凭借她在《壮志千秋》(1931)、《孽海狂涛》(1936)、《
  • 黏胶层黏胶层(Mucigel)是覆盖在植物根冠富含黏性的一种物质。根冠最外层的细胞会分泌有丰富的碳水化合物,如果胶,其中高基氏体是产生黏胶层的胞器,细胞透过胞吐作用。在高微生物的土壤
  • 常永祥常永祥(1983年9月16日-),中国男子摔跤运动员,中国河北省邯郸市邯郸县兼庄乡汉霸庄人。常永祥1995年开始在邯郸市体工队练习古典式摔跤,1999年转入山西省大同市摔跤队,2001年升入山
  • 拉蒙·卡斯蒂略拉蒙·卡斯蒂略·巴里奥努埃沃(Ramón S. Castillo Barrionuevo,1873年11月20日-1944年10月10日),阿根廷总统(1942-1943)。卡斯蒂略博士从1938年到1942年担任阿根廷的副总统,从194
  • 多镜头模式多镜头模式是指在拍摄电影以及视频等影视作品时使用两个以上相机同时拍摄,因此场景可以根据内容的变化随时更换视角,对应的还有单镜头设置。
  • 郑号锡郑号锡(朝鲜语:정호석 ,1994年2月18日-),艺名 j-hope(朝鲜语:제이홉 ;日语:ジェイホープ )。韩国男艺人,为韩国男子团体防弹少年团的成员,在团内担任副Rapper、主舞及舞蹈队长,为第三位
  • 薛综薛综(?-243年),字敬文,沛郡竹邑人,战国时齐国孟尝君后代。三国时东吴官员,文学家。薛综年少时就跟随族人到交州避乱,于交州跟随刘熙学习。建安十五年(210年),步骘到交州出任交州刺史,交趾
  • 徐惟杰徐惟杰(1976年5月24日-),男,汉族,山东青岛人。现居上海,供职于SMG融媒体中心,主持《新闻报道》,偶尔代班《新闻夜线》。1995年从青岛二中高中毕业后就读于北京广播学院播音与主持艺术