2010-11-01 81 views
1

我正在服用一些C++类并发送老师9练习,每个练习都是一个简单的目录,名称为'ex $',其中$是数字。每个目录都有一个名为'ex $ .cpp的源文件。我想创建一个makefile,让我输入:如何在不需要在项目中包含每个源文件的情况下创建生成文件?

make ex$ 

它将建立一个对应于内“前$”目录编译源文件中的可执行文件。问题的关键在于,我想这样做,而不是为每个练习创建一个目标(某种'通用目标')。我还需要一个'all'目标,它将进入以'ex'开头的每个目录并在那里构建可执行文件。我怎样才能做到这一点?

+0

'find -name * .cpp | xargs g ++'? – Andrey 2010-11-01 23:02:47

回答

3

如果您的所有C++目标都可以使用基本相同的命令来构建,那么您可以非常轻松地完成此任务。阅读this。尤其要注意[email protected]。既然这是教育的一部分,我会让其余的模糊。

2

我也可以建议看一下CMake,它会为你使用IMO做更好的makefile。主要长期收益的初始高学习曲线。 :)

相关问题