首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >CMAKE_MAKE_PROGRAM未找到

CMAKE_MAKE_PROGRAM未找到
EN

Stack Overflow用户
提问于 2011-05-26 16:07:13
回答 16查看 187.1K关注 0票数 87

我的CMake已经到了极限;它有很大的潜力,但我似乎无法使它找到基本的系统工具(即make)来发挥作用。

病征

CMake和CMake图形用户界面产生以下结果(在删除CMakeCache.txt文件之后):

代码语言:javascript
运行
复制
Processing top-level CMakelists.txt for project swb
CMake Error: CMake was unable to find a build program corresponding to "MinGW Makefiles".
CMAKE_MAKE_PROGRAM is not set.  You probably need to select a different build tool.

我专注于在这个问题中找到make,但是,由于CMake找不到库和其他实用程序文件(链接器、nm、ar等),我也遇到了许多相同的问题。下面列出的技术似乎使CMake能够在Linux下运行时找到这些文件。

系统

Windows 7(64位);多个版本的MinGW (32位/64位);Cmake2.8.4;MinGW的非标准安装位置(c:/MinGW-32 )。

我试过的东西

  1. CMakelists.txt在文件的前10行中包含SET( CMAKE_MAKE_PROGRAM c:/MinGW-32/bin/make.exe FORCE )
  2. 以前版本的CMakelists.txt包含: find_program(CMAKE_MAKE_PROGRAM名称使make.exe DOC“找到适合在make.exe/MinGW下构建的make程序”提示c:/MinGW-32/bin )
  3. 在运行CMAKE_MAKE_PROGRAM或CMake之前,在cmd.exe环境变量中设置CMake。
  4. 使用“工具链”文件标识CMAKE_MAKE_PROGRAMCMAKE_C_COMPILER等。

有一件事起作用了

如果我使用GUI填充CMAKE_MAKE_PROGRAM变量("C:/MinGW-32/bin/make.exe"),CMake将成功地创建构建文件。

问题(S)

如果我通过GUI识别了make程序的名称,我就可以让CMake工作。如何使CMake能够在不使用Windows 7(64位)/ MinGW组合的情况下找到我的make程序?

EN

回答 16

Stack Overflow用户

发布于 2011-05-26 20:04:18

我有两个建议:

  1. 在%PATH%环境变量中有设置吗?在我的系统中,我需要将%MINGW_DIR%\bin添加到%PATH%。
  2. 你已经安装了吗?根据您的混合安装,它可以是一个单独的包。
  3. 最后一招:你能通过命令行的全部路径吗?cmake -D"CMAKE_MAKE_PROGRAM:PATH=C:/MinGW-32/bin/make.exe" ..\Source
票数 41
EN

Stack Overflow用户

发布于 2012-11-01 06:52:16

在GUI中,选择"Advanced“复选框。它现在应该显示以下几个条目。将mingw32-make.exe文件重命名为make.exe (只需复制一份),并将CMAKE_MAKE_PROGRAM filepath变量设置为该文件的位置。

票数 23
EN

Stack Overflow用户

发布于 2019-07-03 10:31:45

关于ubuntu,我想我错过了编译器。固定于:

代码语言:javascript
运行
复制
sudo apt install build-essential
票数 16
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6141608

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档