Eclipse CDT -- 找不到"make"程序 (win7, 已安装mingw, msys)

3

我正在使用安装了CDT的Eclipse Juno版本,运行在Windows 7系统上。已经安装了MinGW和msys,并设置了PATH环境变量。如果我只是运行cmd.exe并输入make,它将运行msys中的make.exe

C:\Users\dev>make
make: *** No targets specified and no makefile found.  Stop.

C:\Users\dev>echo %PATH%
C:\Program Files (x86)\Windows Resource Kits\Tools\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\MySQL\MySQL Server 5.5\bin;C:\Program Files (x86)\php;C:\Program Files (x86)\libtidy\bin;C:\Program Files\7-Zip;C:\Program Files\TortoiseSVN\bin;C:\Program Files\Java\jdk1.7.0\bin;C:\Program Files (x86)\apache-ant-1.8.4\bin;C:\Program Files\TortoiseHg\;C:\Program Files (x86)\Windows Resource Kits\Tools\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\MySQL\MySQL Server 5.5\bin;C:\Program Files (x86)\php;C:\Program Files (x86)\libtidy\bin;C:\Program Files\7-Zip;C:\Program Files\TortoiseSVN\bin;C:\Program Files\Java\jdk1.7.0\bin;C:\Program Files (x86)\apache-ant-1.8.4\bin;C:\Program Files\TortoiseHg\;C:\Program Files (x86)\MinGW\bin;C:\Program Files (x86)\MinGW\msys\1.0\bin

到目前为止一切都很好。但是即使重新启动Eclipse(甚至重启Windows!),当我尝试制作简单的“Hello World” C程序时,CDT也会给出以下错误消息:
Program "make" not found in PATH

Eclipse错误输出

有趣的是,如果我从Eclipse运行以下Java代码...

import java.io.BufferedReader;
import java.io.InputStreamReader;

public class Temp {
    public static void main(String[] args) {
        System.out.println(System.getenv("PATH"));
        try {
            String line;
            Process p = Runtime.getRuntime().exec("make");
            BufferedReader input =
              new BufferedReader
                (new InputStreamReader(p.getErrorStream()));
            while ((line = input.readLine()) != null) {
                System.out.println(line);
            }
            input.close();
          }
          catch (Exception err) {
            err.printStackTrace();
          }
    }
}

我得到了我所期望的输出,即:
C:\Program Files (x86)\Windows Resource Kits\Tools\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\MySQL\MySQL Server 5.5\bin;C:\Program Files (x86)\php;C:\Program Files (x86)\libtidy\bin;C:\Program Files\7-Zip;C:\Program Files\TortoiseSVN\bin;C:\Program Files\Java\jdk1.7.0\bin;C:\Program Files (x86)\apache-ant-1.8.4\bin;C:\Program Files\TortoiseHg\;C:\Program Files (x86)\MinGW\bin;C:\Program Files (x86)\MinGW\msys\1.0\bin
make: *** No targets specified and no makefile found.  Stop.

为什么Eclipse CDT找不到make,而其他人却可以?
2个回答

2
无论出于什么原因,将MinGW和Msys路径移动到PATH变量的前面(在上面的问题中它们在末尾)解决了我的问题。

0

在将 C:\MinGW\bin 添加到 PATH 变量之后,确保您的新项目使用如下所示的 MinGW GCC 工具链创建。

enter image description here


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接