美文网首页
CMake的pkg-config模块使用

CMake的pkg-config模块使用

作者: dnsir | 来源:发表于2018-11-26 23:38 被阅读52次

1 引言

很多大型第三方框架使用Pkg-Config维护它依赖库路径、头文件路径、编译选项、链接选项等信息,文件名后缀是.pc,方便第三方开发者便捷地获取相关信息,例如OpenCV和Seastar,通常都是大型且复杂的第三方库

2 基本使用

可以通过Linux的PkgConfig命令获取相关信息,如
pkg-config --libs --cflags seastar

3 CMake中如何调用

CMake通过FindPkgConfig模块来使用获取相关信息,比较经典的写法是:

set(ENV{PKG_CONFIG_PATH} /seastar/build/release)
find_package(PkgConfig)
pkg_search_module(SEASTARPC REQUIRED seastar)

后面就可以通过SEASTARPC_LIBRARIES等方式获取相关编译选项和库名称等。

MESSAGE(STATUS ${SEASTARPC_LIBRARIES})
MESSAGE(STATUS ${SEASTARPC_INCLUDE_DIRS})

具体有哪些可以使用,可以参看CMake的FindPkgConfig模块使用.

4 总结

一些细节问题可以百度一下,以上方法足够日常开发使用。

5 附录-seastar.pc

seastar.pc位于/seastar/build/release/seastar.pc,文件内容如下:

Name: Seastar
URL: http://seastar-project.org/
Description: Advanced C++ framework for high-performance server applications on modern hardware.
Version: 1.0
Libs:
Cflags:

相关文章

网友评论

      本文标题:CMake的pkg-config模块使用

      本文链接:https://www.haomeiwen.com/subject/rfqwqqtx.html