目录

问题描述解决方式

问题描述

(1)cmake编译c++程序遇到如下错误: make : 无法将“make”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次。 所在位置 行:1 字符: 1

make + CategoryInfo : ObjectNotFound: (make:String) [], CommandNotFoundException

+ FullyQualifiedErrorId : CommandNotFoundException

(2) 同时通过搜索minGW/bin文件,发现并没有对应的mingw32-make.exe文件 (3)make: *** No targets specified and no makefile found. Stop

解决方式

(1)需要重新下载mingw32-make.exe文件 在minGW/bin文件,使用cmd输入如下命令

mingw-get install gcc g++ mingw32-make

输入后会安装

http://osdn.net/dl/mingw/gcc-9.2.0-2-mingw32-lic.tar.xz

21.33 kB / 21.33 kB |================================================| 100%

http://osdn.net/dl/mingw/gcc-9.2.0-2-mingw32-man.tar.xz

281.37 kB / 281.37 kB |================================================| 100%

http://osdn.net/dl/mingw/gcc-9.2.0-2-mingw32-info.tar.xz

1.00 MB / 1.00 MB |================================================| 100%

http://osdn.net/dl/mingw/gcc-9.2.0-2-mingw32-lang.tar.xz

1.57 MB / 1.57 MB |================================================| 100%

http://osdn.net/dl/mingw/gcc-c++-9.2.0-2-mingw32-man.tar.xz

255.52 kB / 255.52 kB |================================================| 100%

http://prdownloads.sourceforge.net/mingw/make-3.82.90-2-mingw32-cvs-20120902-bin.tar.lzma?download

94.58 kB / 94.58 kB |================================================| 100%

http://prdownloads.sourceforge.net/mingw/make-3.82.90-2-mingw32-cvs-20120902-doc.tar.lzma?download

183.46 kB / 183.46 kB |================================================| 100%

http://prdownloads.sourceforge.net/mingw/make-3.82.90-2-mingw32-cvs-20120902-lic.tar.lzma?download

11.23 kB / 11.23 kB |================================================| 100%

http://prdownloads.sourceforge.net/mingw/make-3.82.90-2-mingw32-cvs-20120902-lang.tar.lzma?download

90.81 kB / 90.81 kB |================================================| 100%

install: gcc-9.2.0-2-mingw32-lic.tar.xz

installing gcc-9.2.0-2-mingw32-lic.tar.xz

install: gcc-core-9.2.0-2-mingw32-bin.tar.xz

mingw-get: *** ERROR *** package gcc-core-9.2.0-2-mingw32-bin.tar.xz is already installed

install: gcc-core-4.8.2-2-mingw32-dev.tar.lzma

installing gcc-core-4.8.2-2-mingw32-dev.tar.lzma

install: gcc-core-4.8.1-5-mingw32-doc.tar.lzma

installing gcc-core-4.8.1-5-mingw32-doc.tar.lzma

install: gcc-9.2.0-2-mingw32-man.tar.xz

installing gcc-9.2.0-2-mingw32-man.tar.xz

install: gcc-9.2.0-2-mingw32-info.tar.xz

installing gcc-9.2.0-2-mingw32-info.tar.xz

install: gcc-9.2.0-2-mingw32-lang.tar.xz

installing gcc-9.2.0-2-mingw32-lang.tar.xz

install: gcc-c++-9.2.0-2-mingw32-bin.tar.xz

mingw-get: *** ERROR *** package gcc-c++-9.2.0-2-mingw32-bin.tar.xz is already installed

install: gcc-c++-4.8.2-2-mingw32-dev.tar.meta

installing gcc-c++-4.8.2-2-mingw32-dev.tar.meta

install: gcc-c++-4.8.1-5-mingw32-doc.tar.lzma

installing gcc-c++-4.8.1-5-mingw32-doc.tar.lzma

install: gcc-c++-9.2.0-2-mingw32-man.tar.xz

installing gcc-c++-9.2.0-2-mingw32-man.tar.xz

install: make-3.82.90-2-mingw32-cvs-20120902-bin.tar.lzma

installing make-3.82.90-2-mingw32-cvs-20120902-bin.tar.lzma

install: make-3.82.90-2-mingw32-cvs-20120902-doc.tar.lzma

installing make-3.82.90-2-mingw32-cvs-20120902-doc.tar.lzma

install: make-3.82.90-2-mingw32-cvs-20120902-lic.tar.lzma

installing make-3.82.90-2-mingw32-cvs-20120902-lic.tar.lzma

install: make-3.82.90-2-mingw32-cvs-20120902-lang.tar.lzma

installing make-3.82.90-2-mingw32-cvs-20120902-lang.tar.lzma

(2)此时文件夹中会出现mingw32-make.exe程序 此时使用“mingw32-make”可以实现make编译,但是输入“make”还是会提示问题中的错误 (3)将mingw32-make.exe程序重命名为“make”,再编译就可以啦

(4)make: *** No targets specified and no makefile found. Stop 使用构建命令

cmake --build . --target all。

为什么该make命令在 Windows 上不起作用:CMake 是一种生成项目的工具,可以通过适合系统的构建工具来构建这些项目。CMake 通常为 Windows 生成 MSVC 项目,因此它不会通过make命令生成一个Makefile。

或者方法二: 删除现有build文件夹,重新使用如下命令进行编译:

cmake .. -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -G "Unix Makefiles"

cmake 的处理器结果使用"Unix Makefiles"

查看原文