CMakeLists.txt
cmake_minimum_required(VERSION 3.10)
project(Tutorial )
set(CMAKE_CXX_COMPILER "D:/solfware/mingw64/bin/g++.exe")
set(CMAKE_C_COMPILER "D:/solfware/mingw64/bin/gcc.exe")
set(CMAKE_MAKE_PROGRAM "D:/solfware/mingw64/bin/make.exe")
add_executable(Tutorial tutorial.cxx)
tutorial.cxx
#include <cmath>
#include <cstdlib>
#include <iostream>
#include <string>
int main(int argc, char* argv[])
{
if (argc < 2) {
std::cout << "Usage: " << argv[0] << " number" << std::endl;
return 1;
}
const double inputValue = atof(argv[1]);
const double outputValue = sqrt(inputValue);
std::cout << "The square root of " << inputValue << " is " << outputValue
<< std::endl;
return 0;
}
生成Makefile
:\Users\AW\Downloads\CMake-master\CMake-master\Help\guide\tutorial\Step1\Step1_build>cmake -G "MinGW Makefiles" ..
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.
CMake Error: CMAKE_C_COMPILER not set, after EnableLanguage
CMake Error: CMAKE_CXX_COMPILER not set, after EnableLanguage
-- Configuring incomplete, errors occurred!
See also "C:/Users/AW/Downloads/CMake-master/CMake-master/Help/guide/tutorial/Step1/Step1_build/CMakeFiles/CMakeOutput.log".
原因
D:\solfware\mingw64\bin 的目录
2023/04/11 16:58 <DIR> .
2023/04/11 16:58 <DIR> ..
2018/05/12 11:07 1,055,744 addr2line.exe
2018/05/12 11:07 1,079,808 ar.exe
2018/05/12 11:07 1,897,472 as.exe
2018/05/12 14:10 1,958,400 c++.exe
2018/05/12 11:07 1,054,208 c++filt.exe
2018/05/12 14:10 1,956,352 cpp.exe
2018/05/12 11:07 1,113,088 dlltool.exe
2018/05/12 11:07 52,736 dllwrap.exe
2018/05/12 11:07 3,121,664 dwp.exe
2018/05/12 11:07 38,912 elfedit.exe
2018/05/12 14:10 1,958,400 g++.exe
2018/05/12 14:10 59,392 gcc-ar.exe
2018/05/12 14:10 59,392 gcc-nm.exe
2018/05/12 14:10 59,392 gcc-ranlib.exe
2018/05/12 14:10 1,955,328 gcc.exe
2018/05/12 14:10 1,401,856 gcov-dump.exe
2018/05/12 14:10 1,457,152 gcov-tool.exe
2018/05/12 14:10 1,535,488 gcov.exe
2018/05/12 15:28 59,605 gdb.exe
2018/05/12 15:28 9,594,561 gdborig.exe
2018/05/12 15:28 506,436 gdbserver.exe
2018/05/12 14:12 55,808 gendef.exe
2018/05/12 14:12 73,728 genidl.exe
2018/05/12 14:12 28,672 genpeimg.exe
2018/05/12 14:10 1,957,376 gfortran.exe
2018/05/12 11:07 1,119,744 gprof.exe
2018/05/12 11:07 1,489,408 ld.bfd.exe
2018/05/12 11:07 1,489,408 ld.exe
2018/05/12 11:07 5,157,376 ld.gold.exe
2018/05/12 14:11 32,768 libatomic-1.dll
2018/05/12 14:11 76,288 libgcc_s_seh-1.dll
2018/05/12 14:11 156,672 libgomp-1.dll
2018/05/12 14:11 334,848 libquadmath-0.dll
2018/05/12 14:11 17,408 libssp-0.dll
2018/05/12 14:11 1,417,216 libstdc++-6.dll
2018/05/12 14:11 52,224 libwinpthread-1.dll
2018/05/12 15:29 221,184 make.exe
2018/05/12 15:29 221,184 mingw32-make.exe
2018/05/12 11:07 1,067,008 nm.exe
2018/05/12 11:07 1,234,432 objcopy.exe
2018/05/12 11:07 2,285,056 objdump.exe
2018/05/12 11:07 1,079,808 ranlib.exe
2018/05/12 11:07 581,632 readelf.exe
2018/05/12 11:07 1,056,256 size.exe
2018/05/12 11:07 1,056,256 strings.exe
2018/05/12 11:07 1,234,432 strip.exe
2018/05/12 14:13 437,760 widl.exe
2018/05/12 11:07 1,078,272 windmc.exe
2018/05/12 11:07 1,166,848 windres.exe
2018/05/12 14:10 1,958,400 x86_64-w64-mingw32-c++.exe
2018/05/12 14:10 1,958,400 x86_64-w64-mingw32-g++.exe
2018/05/12 14:10 1,955,328 x86_64-w64-mingw32-gcc-8.1.0.exe
2018/05/12 14:10 59,392 x86_64-w64-mingw32-gcc-ar.exe
2018/05/12 14:10 59,392 x86_64-w64-mingw32-gcc-nm.exe
2018/05/12 14:10 59,392 x86_64-w64-mingw32-gcc-ranlib.exe
2018/05/12 14:10 1,955,328 x86_64-w64-mingw32-gcc.exe
2018/05/12 14:10 1,957,376 x86_64-w64-mingw32-gfortran.exe
安装时把mingw32-make.exe改成了make.exe,这时在mingw下找不到可以生成的MinGW Makefile的mingw32-make.exe。
解决办法
将mingw32-make.exe copy一份,重命名为make.exe,使得mingw/bin下有这两个文件即可
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)