我们有一个项目(C)(不是 Cygwin exe项目,而是一些嵌入式的交叉编译项目),该项目的Makefile设计为可在Cygwin环境中使用。那是打算用来打开Cygwin终端,进入项目目录并从那里运行make
。
我可以在Eclipse中将此项目作为Makefile项目导入,但是显然,从Eclipse内部执行的常规构建命令将无法正常运行,因为它试图在本机(Windows)环境中调用make
。有没有一种方法可以使Eclipse运行Cygwin,在其中调用make
命令,并使常规CDT错误解析器正常工作?也许通过创建自定义构建器?
答案 0 :(得分:0)
我已经通过使用生成脚本调用了一些cygwin命令来解决了这个问题:
build.bat:
@echo off
c:\cygwin64\bin\bash --login -c "cd %cd:\=/%; make %*"
故障:
c:\cygwin64\bin\bash --login -c "<command>"
-用于在cygwin环境中调用命令
cd %cd:\=/%;
-是一个“ dos” %cd%
变量(当前路径),用反斜杠替换为反斜杠-避免将这些反斜杠以未转义的形式删除。
make %*
-用传递到该批处理文件的所有参数调用cygwin make
命令-这是为了让Eclipse传递构建目标和/或构建标志。
现在在eclipse的“项目构建”选项卡中,我将make
命令替换为build.bat
,它的工作原理很吸引人。唯一的缺点是除了其他项目文件外还具有此文件,但是由于它非常通用,因此可以在具有这些限制的任何项目中重复使用。