在我的场景中,我在CDT Eclipse中有一个C ++项目。然而,这个项目是一个单独(辅助)程序的集合,而不是一个复杂的应用程序。因此,我希望能够单独构建和运行它们。
我的项目结构非常简单,看起来像:
src/app1.cpp
src/app2.cpp
src/...
请注意,我没有常见的头文件或库。但是,我希望能够通过创建例如这个项目来为这个项目添加程序。 SRC / appx.cpp
理想情况下,我希望有
的快捷方式有关如何在没有其他插件的情况下实现此行为的任何建议吗?
答案 0 :(得分:5)
成功实现目标的直接方法是使用CDT创建Makefile项目,并为 Makefile 中的每个应用程序添加新的目标规则。您甚至可以将SCons或其他构建系统与CDT Makefile项目一起使用,并获得相同的效果。
您还可以欺骗托管构建来创建可执行文件而不是目标文件。从项目属性中的C ++编译器设置的其他标志中删除-c
选项。这将为每个源文件生成一个单独的应用程序文件。
在构建目录中创建的应用程序文件将具有目标文件扩展名,并且它们将不可执行。要解决此问题,您可以在项目目录中添加后期构建脚本,例如:
Linux的 postbuild.sh
:
chmod +x *.o
rename -v 's/\.o$//' *.o
适用于Windows的或postbuild.bat
:
rename *.o *.exe
在构建设置中添加../postbuild.sh
或../postbuild.bat
作为后期构建命令后,您的应用程序就可以运行了。右键单击任何这些可执行文件,然后选择Debug As
或Run As
,将创建一个新的运行配置。
此外,您必须停止托管构建的链接器以防止错误。这可以通过将链接器命令更改为true
(Linux)或true.exe
(Windows,msys)来实现。