cmake linux模板 多目录_关于c ++:Linux编程中的多目录“ make”

假设我们有一个文件列表:

src

一种

b

C

生成文件

每个文件夹中都有许多.cc和.h文件。

如何编写Makefile?

当我写这样的路径时

./a/a.cc或../a/a.cc

将会发生错误。

但是当我将文件放在同一目录中时

并写为a.cc。

一切都好。

我在cygwin上运行。

谁能帮我吗?

发布您的makefile的示例将很有帮助。

应该与./a/a.cc一起使用,但是您必须确保相关性正确。 Makefile永远不会更改工作目录

可能与此重复:stackoverflow.com/q/9313760/1025391

您遗漏了许多细节(例如,您要将对象文件放置在何处),但是VPATH可能正是您想要的。

VPATH = src/a src/b src/c

# Now you can write rules as if the .cc & .h files were in the current directory.

%.o: %.cc

do something with $<

foo.o: foo.cc bar.h

do something special with $<

从不太清楚的目录图中,您似乎在Makefile中缺少src/目录前缀。 例如。 要编译src/a/a.cc,请使用:

src/a/a.o: src/a/a.cc

$(CXX) $(CXXFLAGS) -c -o $@ $<

但是:帮个忙,并使用真正的构建系统,例如CMake。 它是跨平台的,可以生成IDE项目文件(例如用于Visual Studio,Xcode,Eclipse,CodeBlocks等),级别更高,并且可以自动为您跟踪依赖项。

wildcard函数是您要寻找的功能:http://www.gnu.org/software/make/manual/html_node/Wildcards.html

在Linux上,我希望使用Automake / Autoconf构建系统:http://de.wikipedia.org/wiki/GNU_Build_System

另一种可能是CMake:http://www.cmake.org/

我是新人。 Stackoverflow确实是一个出色的网站,聚集了全世界最高级的极客。 这些答案非常有用,我接受了所有答案。 有人收到吗?

谢谢你的建设性意见?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值