gpt4 book ai didi

CMake 无法在 Windows 上创建 MakeFile

转载 作者:行者123 更新时间:2023-12-04 12:09:53 24 4
gpt4 key购买 nike

当我尝试运行时 cmake ,它确实生成了一堆文件,但没有创建 MakeFile。

CMakeLists.txt

PROJECT(main)
CMAKE_MINIMUM_REQUIRED(VERSION 3.16)
AUX_SOURCE_DIRECTORY(. DIR_SRCS)
ADD_EXECUTABLE(main ${DIR_SRCS})

主文件
int main()
{
return 0;
}

运行后 cmake在 cmd 中,它给了我这个
E:\practiceFolder\cake>cmake .
-- Building for: Visual Studio 16 2019
-- Selecting Windows SDK version 10.0.17763.0 to target Windows 10.0.18362.
-- The C compiler identification is MSVC 19.21.27702.2
-- The CXX compiler identification is MSVC 19.21.27702.2
-- Check for working C compiler: D:/VisualStudio2019/VC/Tools/MSVC/14.21.27702/bin/Hostx64/x64/cl.exe
-- Check for working C compiler: D:/VisualStudio2019/VC/Tools/MSVC/14.21.27702/bin/Hostx64/x64/cl.exe -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: D:/VisualStudio2019/VC/Tools/MSVC/14.21.27702/bin/Hostx64/x64/cl.exe
-- Check for working CXX compiler: D:/VisualStudio2019/VC/Tools/MSVC/14.21.27702/bin/Hostx64/x64/cl.exe -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Configuring done
-- Generating done
-- Build files have been written to: E:/practiceFolder/cake

之后生成一些文件
E:.
│ ALL_BUILD.vcxproj
│ ALL_BUILD.vcxproj.filters
│ CMakeCache.txt
│ CMakeLists.txt
│ cmake_install.cmake
│ main.c
│ main.sln
│ main.vcxproj
│ main.vcxproj.filters
│ ZERO_CHECK.vcxproj
│ ZERO_CHECK.vcxproj.filters

└─CMakeFiles
│ cmake.check_cache
│ CMakeOutput.log
│ generate.stamp
│ generate.stamp.depend
│ generate.stamp.list
│ TargetDirectories.txt

├─3.16.2
and some other files

在其中找不到 MakeFile。这里可能有一些明显的错误,但我就是找不到。我已经被困在这里几个小时了,任何帮助将不胜感激,谢谢!

最佳答案

在类 Unix 平台上,运行 cmake然后 make默认情况下创建 Makefile。在 Windows 上不是这种情况。

在 Windows 上,CMake 默认生成 MSVC 解决方案。检查 .sln构建目录中的文件。

如果您确实需要 Windows 上的 Makefile,请添加 -G "Unix Makefiles"cmake线。

如果你想使用 MSVC 作为编译器但在命令行上工作,另一个选项是 -G "NMake Makefiles" ,并调用 make在那之后。

在尝试构建新的生成器目标之前,请确保删除您的构建目录。 CMake 可能对此很敏感。

查询 cmake --help获取可用选项列表。 (特别是生成器目标是特定于平台的。)

关于CMake 无法在 Windows 上创建 MakeFile,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59550821/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com