多个错误C1083,尽管路径和权限正确
Multiple errors C1083 despite the correctness of path and rights
我正在使用VS2017工具集v141在Windows 10 x64中编译opencv(master)。VS项目由cmake生成。
我有多个错误,例如:
c1xx:致命错误C1083:无法打开源文件:"I:\opencv-master\opencv\3rdparty\openexr\IlmThread\IlmThreadWin32.cpp":没有这样的文件或目录[I:\opencv-master\build\3rdparty\openexr\IlmImf.vcxproj]
然而,我不明白这是怎么发生的,因为:
- 路径是绝对路径
- 文件确实存在
- 读取访问权限正确
此外,在IlmImf.vcxproj中,引用了许多文件,但错误中只提到了其中的少数文件。这只是ClCompile
标记中的文件。
例如,对于Half
中的文件,C1083错误中仅引用half.cpp
:
<ItemGroup>
<ClInclude Include="I:opencv-masteropencv3rdpartyopenexrHalfeLut.h" />
<ClInclude Include="I:opencv-masteropencv3rdpartyopenexrHalfhalf.h" />
<ClInclude Include="I:opencv-masteropencv3rdpartyopenexrHalfhalfFunction.h" />
<ClInclude Include="I:opencv-masteropencv3rdpartyopenexrHalfhalfLimits.h" />
<ClInclude Include="I:opencv-masteropencv3rdpartyopenexrHalftoFloat.h" />
<ClCompile Include="I:opencv-masteropencv3rdpartyopenexrHalfhalf.cpp" />
以下是完整的vcxproj文件:https://github.com/mprevot/C1083/blob/master/IlmImf.vcxproj
编辑
我可以在VS2017中打开项目中的每个cpp文件。对于各个cpp文件,右键单击+compile(alt+F7)会导致相同的错误。但其中很少有也存在E1696错误。
严重性代码描述项目文件行抑制状态错误(活动)E1696无法打开源代码文件"I:\OPENCV-MASTER\OPENCV\3RDPARTY\OPENEXR\ILMTHREAD\ILMTHREADMUTEX.CPP"IlmImf 0
严重性代码描述项目文件行抑制状态错误C1083无法打开源文件:"I:\opencv-master\opencv\3rdparty\openexr\IlmThread\IlmThreadMutex.cpp":没有此类文件或目录IlmImf I:\opencv-master\build\3rdparty\openexr\c1xx 1
命令行是:
/MP /GS /TP /W3 /wd"4127" /wd"4251" /wd"4324" /wd"4275" /wd"4512" /wd"4589"
/wd"4018" /wd"4099" /wd"4100" /wd"4101" /wd"4189" /wd"4245" /wd"4305"
/wd"4389" /wd"4701" /wd"4702" /wd"4706" /wd"4800" /wd"4334" /wd"4244"
/wd"4267" /wd"4456" /Gy /Zc:wchar_t
/I"I:opencv-masteropencv3rdpartyopenexrIlmImf"
/I"I:opencv-masteropencv3rdpartyopenexrImath"
/I"I:opencv-masteropencv3rdpartyopenexrIlmThread"
/I"I:opencv-masteropencv3rdpartyopenexrIex"
/I"I:opencv-masterbuild3rdpartyzlib"
/I"I:opencv-masteropencv3rdpartyzlib"
/I"I:opencv-masterbuild3rdpartyopenexr"
/I"I:opencv-masteropencv3rdpartyopenexrHalf"
/I"I:opencv-masterbuild" /Gm- /O2 /Ob2
/Fd"I:opencv-masterbuild3rdpartylibReleaseIlmImf.pdb"
/Zc:inline /fp:precise /D "WIN32" /D "_WINDOWS" /D "_CRT_SECURE_NO_DEPRECATE"
/D "_CRT_NONSTDC_NO_DEPRECATE" /D "_SCL_SECURE_NO_WARNINGS" /D "NDEBUG"
/D "_VARIADIC_MAX=10" /D "CMAKE_INTDIR="Release"" /D "_MBCS"
/errorReport:prompt /WX- /Zc:forScope /GR /Gd /Oi /MD /Fa"Release/"
/EHa /nologo /Fo"IlmImf.dirRelease" /Fp"IlmImf.dirReleaseIlmImf.pch"
/diagnostics:classic
和附加选项/bigobj
当我git pull/clone
使用linux版本(WSL),但不使用Windows版本(与Visual Studio打包)时,会发生此问题。它可能是一个不可打印的字符或其他什么,因为在opencvmaster 4.0.0开始时,linuxgit
并没有发生这种情况。
我不确定这是否应该在WSL项目中报告。任何提示都是受欢迎的。
- 如何将更多文件夹添加到c++include路径
- 带有特殊路径部分的"std::filesystem::weakly_canonical"失败
- C++A*算法并不总是在路径中具有目标节点
- 从函数角度看ID到文件路径的内部与外部映射
- Termux权限被拒绝
- boost xml parsingl将xml的路径作为变量发送
- AWS Lambda C++运行时权限被拒绝
- 对于MacOS上的G++,如何添加默认的include目录/usr/local/include和默认的库搜索路径/usr
- 如何使用cppcheck处理半相对包含路径
- 在C++中设置基于操作系统的文件路径
- 基于编译器选项的编译二进制路径
- 按边长度递归搜索图中所有可行路径
- 使用变量值作为 PlaySound 中的路径
- 如何转换真实路径 CString c++
- 从 GUID 获取 USB 卷路径
- 查找 GCD:并非所有控制路径都返回值
- C++17 文件系统::remove_all 带有通配符路径
- 在没有root权限的情况下安装NTL,并在生成文件中修改其构建路径
- 多个错误C1083,尽管路径和权限正确
- QtCreator:启动程序失败.路径或权限错误