2013-05-03 72 views
2

我想在Eclipse中使用Waf构建一个C++项目(在Windows上)。我的Eclipse工作区和我的源文件位于不同的目录中。在Eclipse中设置C++构建工作目录

  • C:\myproject:项目根
  • ​​:WAF构建脚本
  • C:\myproject\source:源代码
  • C:\myproject\project\eclipse:Eclipse工作
  • C:\myproject\project\eclipse\myproject:Eclipse项目

WAF必须执行包含的目录。

在我的项目属性中,在C/C++ Build下,我的Build命令应该是python waf。我在C:\myproject\temp.cmd处创建了一个临时脚本,只包含pwd,并将Build命令设置为..\..\..\temp.cmd以确认工作目录是什么。构建控制台在运行构建时显示C:\myproject\project\eclipse\myproject

我该如何改变它以显示C:\myproject

回答

2

我写了一个包装脚本来设置正确的工作目录。

C:\ MyProject的\项目\日食\ waf.cmd
@ECHO OFF 
CD ..\..\.. 
python waf %* 

在Eclipse中我设置编译命令${WorkspaceDirPath}/waf.cmd

+0

知道您是否需要在脚本末尾恢复工作目录会很有趣。我不这么认为,因为Eclipse可能会为构建过程创建一个新的过程,然后在脚本结束时过期。 – 2013-05-03 13:52:08

-1

C/C++ Build中,您可以设置Build directory。在那里输入C:\myproject。 build命令必须位于PATH中才能使用。

+0

这不起作用。我相信这个领域是为了构建输出。我将'Build directory'设置为'C:\ myproject',并将'Build command'设置为'temp.cmd',但是Eclipse声称它找不到'temp.cmd'。 – 2013-05-03 13:18:40

+1

如果你确定temp.cmd在你的PATH中,它可以工作(或者只是在你的build命令中使用完整路径)。至少它为我做了。 – ellak 2013-05-03 13:32:38