Eclipse CDT创建的makefile不能;“干净”;在窗户上

Eclipse CDT创建的makefile不能;“干净”;在窗户上,eclipse,makefile,eclipse-cdt,Eclipse,Makefile,Eclipse Cdt,我有一个makefile项目,其中包含由EclipseCDT(Helios,MinGW)生成的makefiles。“clean”命令不起作用,因为“del”命令是使用像./src/myfile.o这样的参数执行的,但在Windows上这不起作用(应该是。\src\myfile.o) 我如何告诉Eclipse使用Windows路径分隔符,或者用其他方式替换命令“del”(我可以很容易地编写一个批处理脚本,用反斜杠替换正斜杠) 谢谢你的提示 编辑makefiles以使用mingwrm命令?在您的ms

我有一个makefile项目,其中包含由EclipseCDT(Helios,MinGW)生成的makefiles。“clean”命令不起作用,因为“del”命令是使用像./src/myfile.o这样的参数执行的,但在Windows上这不起作用(应该是。\src\myfile.o)

我如何告诉Eclipse使用Windows路径分隔符,或者用其他方式替换命令“del”(我可以很容易地编写一个批处理脚本,用反斜杠替换正斜杠)


谢谢你的提示

编辑makefiles以使用mingw
rm
命令?

在您的msys bin目录(我的计算机上的C:\msys\1.0\bin)中创建rm.exe的副本并将其重命名为del.exe

这是一个黑客。我不熟悉rm和del参数之间的区别。基本功能就在那里。(删除文件1文件2文件n)

在windows中没有del.exe,删除功能内置于CMD.exe中。eclipse在msys外壳中运行命令,该外壳不具有del功能。这将阻止您向eclipse添加用于搜索del.exe的路径


我尝试了许多不同的方法让托管make将“RM:=RM”放入makefile,但失败了。

在将RM.exe重命名为del.exe之前,请检查Eclipse中的路径。路径必须有Unix路径分隔符(正斜杠,
/
),而不是Windows路径分隔符(反斜杠,
\
)。
这就解决了我的问题。

最好的选择是下载并安装gnuutil
然后将安装的目录(C:\ProgramFile???\GnuWin32\bin)添加到您的windows路径并重新启动eclipse。eclipse现在应该执行rm rf…如果仍然没有…重新启动windows并再次检查您的路径是否有\GnuWin32\bin…然后重新启动eclipse…

有一个简单的解决方案,在项目的主目录中创建一个包含以下内容的
makefile.defs
文件:

RM := rm -rf

基本上,这个文件允许您覆盖自动生成的makefile中的变量,并且
RM
是remove命令的包装器。

这可能吗?请注意,生成文件是由Eclipse自动生成的。好的,我的错。当你提到makefiles时,我以为你在谈论一个CDT Makefile项目。您总是可以切换到其中一个并自己编写makefile?