CLion makefile 错误 : Error running 'Makefile': Cannot run program "\usr\bin\make" CreateProcess error=2, The system cannot find the file specified

时间:2021-05-03 22:56:28

标签: makefile clion

在 CLion 中运行 Makefile。 Makefile 是 Stockfish(chess) 的,在这里 https://github.com/official-stockfish/Stockfish/blob/master/src/Makefile

我正在 Windows 10 系统上尝试此操作。 为什么make找不到文件?是linux vs windows上\ vs /的分隔符问题吗?

完全错误

Error running 'Makefile': Cannot run program "\usr\bin\make" (in directory "C:\Users\anmol\Desktop\Coding\stockfish\src"): CreateProcess error=2, The system cannot find the file specified

我的 CLion 版本内置了 makefile 支持,并且我通过 cygwin 安装了工具链编译器。

2 个答案:

答案 0 :(得分:0)

JetBrains 错误跟踪系统中的 this comment 中给出了您的问题的完整说明。

Cannot run program "\usr\bin\make" 错误源自与 CLion 捆绑在一起的 Makefile language plug-in,也可以添加到其他 JetBrains 的 IDE。尽管已捆绑,但该插件最初是第 3 方插件,并且不属于 CLion 中的 Makefile 支持:在某种程度上,它补充了对 Makefile 的内置支持{1}} 个项目(例如:通过启用语法高亮显示),但有一些与之正交的功能。

“正交”功能尤其是插件运行Make的方式(当您从 Makefile 编辑器中单击 gutter 图标 时) .这与CLion中的Toolchains无关,需要单独配置。

Cygwin

enter image description here

MinGW

enter image description here

您需要在文本字段中输入完整的 Windows 路径(例如:C:\cygwin64\bin\make.exe)并检查Use Cygwin< /em> 框(对于 Cygwin)或保持它未选中(对于 MinGW)。

这将使您能够从 Makefile 编辑器调用 Make 目标(使用带有插件的 any JetBrains IDE安装,而不仅仅是 CLion)。

答案 1 :(得分:0)

解决方法:

在 CLion Makefile 项目中,有两种“配置”类型可用: “Makefile 目标”和“Makefile 应用程序”。如果您编辑 “Makefile 应用程序” 配置,您将看到一个名为“可执行文件:”

的字段

“可执行文件:”可以是任何 Linux 命令,包括 make 本身。对于“Makefile Application”(不是“Makefile Target”),该命令使用 wsl.exe 正确启动,以便该命令在 WSL 而不是 Windows 中运行。

(“Makefile Target”的问题显然是一个 CLion/plugin 错误,即“\usr\bin\make”不是使用 wsl.exe 运行的,所以它在 Windows 中运行,所以 Windows 说它不能找到它,这是意料之中的,因为它最初不应该在 Windows 中运行!:-) )