【问题标题】:Compile common C files for different targets with different CFLAGS使用不同的 CFLAGS 为不同的目标编译通用 C 文件
【发布时间】:2016-09-14 19:50:34
【问题描述】:

我有一个场景,我需要使用相同的 C 文件来构建具有不同 CFLAGS 的不同目标。

假设我有 common1.c common2.c common3.c 通用文件。

Target1 有其他文件 a.c b.c 和 CFLAGS 作为 CFLAGS1
Target2 有其他文件 1.c 2.c 和 CFLAGS 作为 CFLAGS2

Target1 需要用 CFLAGS1 编译的通用文件
Target2需要用CFLAGS2编译的通用文件。

我该怎么做。

提前致谢
文卡特斯

【问题讨论】:

  • 你使用 CMake 吗?或者为什么是“cmake”标签?

标签: c makefile compilation cmake gnu-make


【解决方案1】:

所以我认为这部分文档就是您所追求的: https://www.gnu.org/software/make/manual/html_node/Target_002dspecific.html

“目标特定变量还有一个特殊功能:当您定义目标特定变量时,该变量值也对该目标的所有先决条件及其所有先决条件等有效(除非这些先决条件覆盖该变量具有自己的特定于目标的变量值)。因此,例如,这样的语句:“

prog : CFLAGS = -g
prog : prog.o foo.o bar.o

通读页面很重要,因为需要这样的配方(或只是执行它)会产生一些影响

【讨论】:

    猜你喜欢
    • 2010-11-21
    • 1970-01-01
    • 2016-01-28
    • 2013-10-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-04
    • 1970-01-01
    相关资源
    最近更新 更多