【发布时间】:2017-12-09 02:25:35
【问题描述】:
这是关于makefile的,我想知道makefile是否可以动态编译cpp文件。
假设我有 main.cpp、a.cpp、b.cpp 和 c.cpp 文件。(可能可以添加 d.cpp、e.cpp 等)
main.cpp 文件有main() 函数,a、b 和c 有各自的函数。
有时我只想编译 main.cpp、a.cpp 和 b.cpp 文件并链接它们。
但有时会编译 main.cpp、b.cpp 和 c.cpp 文件并链接。 我想选择编译哪些文件没有规则。
我的想法是什么
做一个b
制作bc
制作一个c
或
做一个 b c
那么只有指定的文件名才能被编译并与main.cpp文件链接。
有没有什么好的方法可以做到这一点?
谢谢。
【问题讨论】:
-
这听起来像是 xy 问题。源文件不能任意组合成一个工作可执行文件......所以你将组合在一起有一些结构,并且该结构将决定什么是“好的”解决方案。 [如果我可能冒险猜测] 你可能会发现陈述你想要实现的目标更有成效,这是其中的一部分。
-
我同意@lockcmpxchg8b。解释为什么要动态链接不同的文件集可能会给你一个更好的答案。