如何使用 pkg-config 设置创建自己的 cmake 目标?

How do I create my own cmake target with pkg-config settings?

我的项目是 shared 库,我想创建带有 pkg-config 设置的安装目标。

目前它只建立一个,非常简单的规则:

add_library(mylib SHARED src/mylib.cxx)

这里我坚持进一步配置,因为每个安装规则都应该依赖于预配置的安装路径和标志。为了简单起见,假设目标将安装到 include and lib 目录,并且预配置的 .pc 规则类似于 -lmylib -I/...include -L/....lib

如何为 cmake 的 installation 目标配置 pkg-config 支持?我想它没有 pkg-config 的内置支持,我需要您的帮助才能找到合适的解决方案。

CMake 可以在两个方向上与 pkg-config 互操作,尽管它有点笨拙。

FindPkgConfig 允许您使用库的 pkg-config 文件查找和使用库。

要让 cmake 为您自己的库生成 pkg-config 文件,您必须使用 configure_file 并有一个模板 pkg-config 文件。