c++ - cmake mingw-w64:尝试构建时出现奇怪的错误
问题描述
我已经安装了 MinGW-w64 并构建了一个简单的 Hello World 程序。但是我第二次运行cmake --build .
时出现了一个奇怪的错误。当 Path 变量设置为C:/MinGW/bin
一切都很好并且可以工作。但是当我将路径设置为C:/msys64/mingw64/bin
这种情况时:
PS C:\repos\hellovs\build> cmake ../ -G Ninja
-- The CXX compiler identification is GNU 10.1.0
-- Check for working CXX compiler: C:/msys64/mingw64/bin/c++.exe
-- Check for working CXX compiler: C:/msys64/mingw64/bin/c++.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: C:/repos/hellovs/build
PS C:\repos\hellovs\build> cmake --build ./
[2/2] Linking CXX executable HelloVS.exe
PS C:\repos\hellovs\build> cmake --build ./
ninja: error: FindFirstFileExA(c/:/msys64/mingw64/include/c++/10.1.0): ╤шэЄръёшўхёър ю°шсър т шьхэш Їрщыр, шьхэш яряъш шыш ьхЄъх Єюьр.
HelloVS.exe
在第一次运行构建命令时正常编译。
Apparanteley Ninja 尝试使用无效路径。关于如何解决这个问题的任何想法?
似乎已经生成了无效的依赖项:
PS C:\repos\hellovs\build> ninja -t recompact
PS C:\repos\hellovs\build> ninja -t deps
CMakeFiles/HelloVS.dir/main.cpp.obj: #deps 136, deps mtime 6109023486207704 (VALID)
../main.cpp
C/:/msys64/mingw64/include/c++/10.1.0/iostream
C/:/msys64/mingw64/include/c++/10.1.0/x86_64-w64-mingw32/bits/c++config.h
C/:/msys64/mingw64/include/c++/10.1.0/x86_64-w64-mingw32/bits/os_defines.h
C/:/msys64/mingw64/include/c++/10.1.0/x86_64-w64-mingw32/bits/cpu_defines.h
C/:/msys64/mingw64/include/c++/10.1.0/pstl/pstl_config.h
C/:/msys64/mingw64/include/c++/10.1.0/ostream
...
解决方案
推荐阅读
- python - Python-使用硒获取新网页的链接
- javascript - 使用拼接删除数组中的项目
- java - 我该如何解决这个问题我想将十进制数转换为二进制
- php - SimpleXML 根据字段获取特定值
- css - React 中的 Firefox Web 扩展,无法解析 CSS -“您可能需要适当的加载器来处理此文件类型”
- python - 如何在熊猫中将单列数据拆分为多列?
- python - 使用Python在Maya中创建具有相对于选择的位置的曲线控件?
- python - 使用 str.read() 时卡住
- amazon-web-services - 在控制台中查看 SQS 消息会增加接收计数吗?
- php - 使用 PHP 从 api 获取数据