将在Cygwin环境中构建的Eclipse Makefile项目

时间:2019-01-28 15:09:18

标签: eclipse cygwin eclipse-cdt

我们有一个项目(C)(不是 Cygwin exe项目,而是一些嵌入式的交叉编译项目),该项目的Makefile设计为可在Cygwin环境中使用。那是打算用来打开Cygwin终端,进入项目目录并从那里运行make

我可以在Eclipse中将此项目作为Makefile项目导入,但是显然,从Eclipse内部执行的常规构建命令将无法正常运行,因为它试图在本机(Windows)环境中调用make。有没有一种方法可以使Eclipse运行Cygwin,在其中调用make命令,并使常规CDT错误解析器正常工作?也许通过创建自定义构建器?

1 个答案:

答案 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,它的工作原理很吸引人。唯一的缺点是除了其他项目文件外还具有此文件,但是由于它非常通用,因此可以在具有这些限制的任何项目中重复使用。