makefile - 这个 makefile 架构有什么意义?

标签 makefile

我有一个程序正在尝试编译,我们称之为 P。P 需要一个第三方库,L1。 L1 需要另一个库,L2。到目前为止,没有什么奇怪的。

P 的 Makefile 基本上只是设置一些变量,然后包含 L1 的 makefile。

L1 的 makefile 执行一大堆变量设置和内容(例如,包括要编译的文件列表),然后包含 L2 的 makefile。

L2s makefile 做了很多工作,实际上完成了所有 3 项工作。

我的问题是 L2 不想编译。

但是,我的系统已经有两个库的二进制版本,但我无法使用它们,因为 L2 makefile 完成了所有工作。

此外,如果您使用动态库进行编译,它将在运行时在您的编译目录中查找要加载的库,这不是它们在生产系统上所属的位置。

我的问题是:他们到底为什么要这样设计?

最佳答案

可能是因为他们维护了库和程序 - 对于他们来说,编译工作并且通过这样做,他们可以保证两个库都是最新的(因此程序有最新的代码可以使用) )。

关于makefile - 这个 makefile 架构有什么意义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1429094/

相关文章:

makefile - 使用 gcc -MM 标志在单个文件中生成所有项目依赖项

makefile - 强制 Makefile 中先决条件的顺序

linux - PKG_CHECK_MODULES 中意外标记 `LIBCONFIGXX,' 附近出现语法错误

performance - MinGW "make"启动速度非常慢

c++ - MATLAB Coder hello world 从头到尾

java - java makefile 基础知识

java - 制作[1] : Entering directory error message

java - Makefile:$(shell find ...) 未输出正确的结果

makefile - GNU 制作 : Generating automatic dependencies with generated header files

c - 如何在没有安装cmake的机器上使用cmake