我们的项目使用CMake配置我们的代码。我们使用Ninja和分布式构建系统。我们团队中的许多人都使用Eclipse CDT。我们使用" Eclipse CDT4 - Ninja"运行CMake。发电机,结果一般都不错。
问题在于,每当更改CMake文件并且您要求Eclipse构建代码时,它会重新生成eclipse项目文件,覆盖您对项目所做的任何手动更改。
例如,它提供eclipse项目的默认构建命令是/usr/bin/ninja
,实际上我想利用我们的分布式构建系统并将构建命令设置为/usr/bin/ninja -j16
。如果我能让CMake自动生成的项目文件包含此设置更改,那就太好了。
我最感兴趣的另一个设置是C/C++ Project Paths->Source
。作为一般规则,我们将CMake构建目录作为兄弟放置到主项目目录,即./project
./build
。我们希望在Eclipse索引的构建目录中包含一些文件,以使代码完成,其他工具可以更好地工作。默认项目不包括源路径中的构建目录,因此它不会被索引。
有没有办法解决这些问题?
答案 0 :(得分:0)
我找到了构建命令问题的解决方案。
当您运行cmake以生成eclipse项目时,请包含附加参数:-DCMAKE_ECLIPSE_NINJA_ARGUMENTS=-j100
。我还没有确认,但我相信eclipse make projects -DCMAKE_ECLIPSE_MAKE_ARGUMENTS=-j100
需要类似的命令。
不幸的是,这个功能的记录很少,我还没有找到解决其他问题的方法。