2015-08-15 50 views
2

我想编译给定目录中的所有文件。如何编译给定目录中的所有c文件?

我不想使用

gcc -o main file1.cpp file2.cpp file3.cpp ... 

,因为有很多的文件。

那么如何编译所有扩展名为.cpp的文件在使用终端/ bash的给定目录中?

+1

只是编译它们,或者也链接到一个可执行文件? – Joni

+1

陈述一个愿望不是一个问题。 – chepner

+1

'* .c'扩展为当前目录中的所有.c文件。你可能需要''somedir“/ *。c'作为其他目录。 –

回答

3

您正在查询扩展名为.cpp的文件吗?所以,你可以只输入:

的gcc -o主*的.cpp

外壳扩展星号file1.cpp,file2.cpp等当前目录。

1

我假设你使用的是Mac/Linux的:

  1. 光盘放入.c文件的目录:cd /path/tofile/
  2. 恭喜!您位于.cpp文件的目录中。只需键入(或复制并粘贴)gcc -o main file.cpp - 编译一个文件,或者这个 - gcc -o main *.cpp所有文件
  3. 如果成功,只需运行程序./main或任何您命名为可执行文件的程序。

希望这适合你!

+0

如果我不知道目录中文件的名称,该怎么办?或者如果在该目录中编译的文件太多,那么编写所有文件的名称将不是解决问题的好方法。我想编译C++文件而不是c文件(我知道我必须使用g ++而不是g--) –

+0

在你说你想编译C++文件之前,我回答了你的问题,并且你说你想编译C文件......你不必使用g ++编译--g ++会编译所有文件作为C++而不管扩展名,而gcc更灵活;将基于扩展进行编译。检查我的编辑! –

相关问题