我在 eclipse 中有一个 C++ 项目,它是用 git 管理的版本。我有一个git submodule ,这是我用 C++ 编写的另一个项目。子模块有它的主要功能,我的项目也有它自己的功能。
当我按下构建时,Eclipse 选择其他主要(来自子模块)进行编译。有没有办法选择在 eclipse 中构建哪个主线程?
更新:我仍在处理这个问题。从项目中排除资源也无济于事。当我解决问题时会回答问题。
更新二: 终于解决了。看我的回答。
最佳答案
我终于解决了这个问题。解决方案不是一个简单直接的解决方案,所以我正在逐步编写:
首先从
Properties -> C/C++ Build -> Tool Chain Editor -> Current toolchain
正确设置你的工具链。对我来说是MacOSX GCC
或Linux GCC
。设置正确的项目源路径。我已将作为子模块导入的项目中的文件符号链接(symbolic link)到我的项目中,因此设置正确的源目录不会从我的项目中排除任何必需的文件。设置位于
Properties -> C/C++ General -> Paths & Symbols -> Source Location
。确保排除其他子模块并将所需文件符号链接(symbolic link)到您的项目。将工件的名称(二进制文件、库等)更改为与
${projName}
不同的名称,因为当您有子模块时,您将有一个名为的目录${projName}
在您的构建文件夹中。设置位于Properties -> C/C++ Build -> Settings -> Build Artifact -> Artifact name
。
进行这些更改后,您的项目应该会自动构建。看起来 eclipse 在构建过程中进行了所有必要的检查,但不会就这些问题向您发出警告。我必须在 Debug
文件夹中运行 make --always-build
才能看到所有这些问题。
关于c++ - 选择 C++ main 函数在 eclipse 中构建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29655980/