pkg-config的学习之路

pkg-config是编译时的辅助工具,用于插入正确的编译器选项。它通过读取xxx.pc文件获取信息,如glibc-2.29.pc。默认在/usr/lib/pkgconfig/查找pc文件,也可通过PKG_CONFIG_PATH环境变量指定路径。pc文件包含Name、Description、Version、Cflags、Libs等信息,用于指示库的路径、版本和编译链接选项。PKG_CHECK_MODULES宏在configure.ac中用于检查模块存在。
摘要由CSDN通过智能技术生成

简介

pkg-config是编译应用程序和库时使用的辅助工具。它可以帮助我们在命令行中插入正确的编译器选项,以便应用程序可以使用诸如gcc -o test test.c `pkg-config --libs --cflags glibc-2.29`的命令,其中–cflags和–libs分别指定CFLAGS参数和库文件。这样我们就不必通过硬编码来找到glib(或其他库)。它与语言无关,因此可用于定义文档的位置。

详解

那么pc-config是从哪儿知道这些信息的呢?它是从名为xxx.pc这个文件中查找到的。上面的例子中,它是从glibc-2.29.pc文件中查知的。

那pkg-config 又怎么会知道opencv.pc这个文件呢?

  • 默认情况下,pkg-config首先在prefix/lib/pkgconfig/中查找相关包对应的相应的文件。在linux上上述路径名为 /usr/lib/pkgconfig/。
  • 若是没有找到,它也会到PKG_CONFIG_PATH这个环境变量所指定的路径下去找。若是没有找到,它就会报错。

设置环境变量PKG_CONFIG_PATH的方法为:

export PKG_CONFIG_PATH=/your/pathname:$PKG_CONFIG_PATH

如果想要让该环境变量永久生效,可以在/etc/profile文件中添加上面的语句,然后执行source /etc/profile让其立即生效。

编写pc文件

这里通过一个示例讲解一下如何编写pc文件。pc文件只需5个内容:Name、Description、Version

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
根据您提供的引用内容和,错误使用 mexopencv.make>pkg_config (line 333) OpenCV library path not found: D:\wangjie\opencv\build\x64\mingw\lib 是由于在配置mexopencv时没有正确设置OpenCV库的路径所导致的。具体来说,D:\wangjie\opencv\build\x64\mingw\lib 这个路径下没有找到OpenCV库。 要解决这个问题,您可以按照以下步骤进行操作: 1. 确保您已经正确安装了OpenCV。请检查您的OpenCV安装路径是否与您在mexopencv.make文件中指定的路径一致。 2. 打开mexopencv.make文件,找到pkg_config函数所在行(line 333),确保函数中指定的OpenCV库路径与您的实际安装路径匹配。 3. 检查OpenCV库路径是否正确设置。可以尝试修改该路径,确保指向正确的OpenCV库路径。您可以使用命令行工具确定正确的OpenCV库路径。 4. 运行mexopencv.make文件,确保在编译过程中正确加载OpenCV库。如果仍然出现错误,请检查您的编译环境和配置是否正确。 总而言之,错误提示表明mexopencv无法找到OpenCV库的路径,请确保已正确设置OpenCV库的路径,并进行必要的更改和调整以解决问题。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [Opencv学习1: 在Linux下编译运行第一个opencv程序](https://blog.csdn.net/wjxxy2196/article/details/70837806)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值