Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Eclipse 构建多个CDT C++;来自命令行的项目 从命令行中建立几个CDT C++项目的最佳方案是什么?这些项目有引用,因此不可能只构建单个项目。_Eclipse_Command Line_Eclipse Cdt - Fatal编程技术网

Eclipse 构建多个CDT C++;来自命令行的项目 从命令行中建立几个CDT C++项目的最佳方案是什么?这些项目有引用,因此不可能只构建单个项目。

Eclipse 构建多个CDT C++;来自命令行的项目 从命令行中建立几个CDT C++项目的最佳方案是什么?这些项目有引用,因此不可能只构建单个项目。,eclipse,command-line,eclipse-cdt,Eclipse,Command Line,Eclipse Cdt,如果您在CDT下创建了Make项目,您可以使用您最喜欢的shell并在所有项目目录中执行Make。我们在现有构建中这样做 在所有外部引用和顶级项目中放置一个makefile。 在“全部”规则中,让它运行: make-C./externalref1 make-C./externalref2 等 实际上,我们在变量中定义了外部依赖关系: EXT_DEP=externalref1 externalref2 然后使用subst(替换)命令使用正确的调用启动所有子生成。当前不支持使用管理生成器进行无头生成

如果您在CDT下创建了Make项目,您可以使用您最喜欢的shell并在所有项目目录中执行Make。

我们在现有构建中这样做

在所有外部引用和顶级项目中放置一个makefile。 在“全部”规则中,让它运行: make-C./externalref1 make-C./externalref2 等

实际上,我们在变量中定义了外部依赖关系: EXT_DEP=externalref1 externalref2
然后使用subst(替换)命令使用正确的调用启动所有子生成。

当前不支持使用管理生成器进行无头生成,请参阅


如果您使用非托管(make)生成器,那么您已经有了可以从命令行使用的makefile。

此功能已添加到CDT 6中(最终生成将于2009年6月15日到期)。您可以从builds页面下载最终版本候选版本:download.eclipse.org/tools/cdt/builds/6.0.0/

使用Eclipse3.5+CDT6版本,您可以使用在命令行发送给Eclipse的以下选项导入、构建和清理构建项目和工作区:

eclipse -nosplash 
        -application org.eclipse.cdt.managedbuilder.core.headlessbuild 
        -import {[uri:/]/path/to/project} 
        -build {project_name | all} 
        -cleanBuild {projec_name | all}
在Windows上,使用而不是
eclipse.exe
将生成输出写入stdout/stderr,以便调用阻塞直到完成

“-application”开关指示Eclipse运行CDT headless builder,而不是启动工作台。其他开关可以单独使用,也可以一起使用。这意味着您可以使用自己的shell脚本签出项目,'-import'将其导入工作区,并使用Managedbuilder的headless builder'-build'将其构建

使用“-data”开关指定要使用的工作区,该工作区可以是空的临时目录,有关平台运行时支持的其他开关,请参阅运行时文档:


有关提交的功能的更多详细信息,请参阅及以后的内容。

在CDT6之前,您可以使用JDT(例如,经典Eclipse附带的JDT)


这使您可以构建已配置的工作区。所以你:签出你的源代码,配置一个指向签出项目的工作区。然后,您的自动构建脚本可以更新签出并运行AptBuilder,而无需启动GUI。

这就是您问题的答案。你需要“乱搞makefile”。Eclipse不是一个构建系统。@Jesse:这只是半个答案。如果我写下我们的项目不是制造项目,那就不是答案。因为更改问题的前提条件并不是问题的答案。@jessewigert comment的新URL是:您考虑过使用吗?Make使用CDT在生成时生成的.mk文件。所以不可能从头开始构建项目,我认为这是Eclipse的一大弱点。无头构建不是Eclipse世界中的一等公民。这不再是事实。该错误已修复。此外,您可以使用以下命令指定单个配置:
-build{project\u name[/config\u name]| all}
示例:
-build project\u name/Release