【问题标题】:Eclipse CDT -- program "make" cannot be found (win7, mingw, msys installed)Eclipse CDT——找不到程序“make”(安装了win7、mingw、msys)
【发布时间】:2013-06-15 02:41:18
【问题描述】:

我在 Windows 7 上运行带有 CDT 的 Eclipse Juno。已经使用 msys 安装了 MinGW 并设置了我的 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 运行以下 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 而其他人都可以!?

【问题讨论】:

    标签: windows eclipse makefile mingw eclipse-cdt


    【解决方案1】:

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

    【讨论】:

      【解决方案2】:

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-07-07
        • 2015-08-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-08-13
        • 2012-10-11
        相关资源
        最近更新 更多