我正在开发两个库 A 和 B,其中 B 取决于 A,它们都在自己的 Git 存储库中进行管理。这些库使用 CMake 构建并安装在标准 UNIX 目录中。在安装过程.pc
中,还会安装一个由pkg-config
. 库 B 用于pkg-config
查找库 A,因此有必要在系统范围内安装库 A,make install
或者将PKG_CONFIG_PATH
其设置为适当的目录。
现在,我使用 Jenkins 在远程机器上构建库 A。不幸的是,由于不满足依赖关系(pkg-config
找不到库 A) ,因此无法构建库 B。在预构建步骤中设置路径不起作用,因为命令在其自己的 shell 中运行。
问题是
- 我可以以某种方式
make install
图书馆A吗?或者, - 我可以以某种方式指向 CMake
/var/lib/jenkins/jobs/libA/install_dir/lib
吗? - 有没有更好的方法来构建具有相互依赖的库的项目?