Visual Studio 2017 致命错误 C1083:无法打开源文件:“Main.cpp”

Visual Studio 2017 致命错误 C1083:无法打开源文件:“Main.cpp”

我是 Visual Studio 2017 的新用户,在构建一个简单的 HelloWorld 项目时遇到了困难。以下是我正在做的事情:

文件 > 新建 > 项目...

我选择空项目.我将项目重命名为你好世界我将位置从 c 驱动器上的默认位置更改为 Dev 文件夹内的一个位置,该文​​件夹位于 d 驱动器上。创建项目后,我右键单击源文件并添加一个名为主程序,包含最简单的代码:

int main() {
   return 0;
}

但是,当我右键单击你好世界建造,我收到以下输出:

1>------ Build started: Project: HelloWorld, Configuration: Debug Win32 ------
1>Main.cpp
1>c1xx : fatal error C1083: Cannot open source file: 'Main.cpp': No such file or directory
1>Done building project "HelloWorld.vcxproj" -- FAILED.
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

但是,只有更改项目位置时才会收到此错误。如果我使用默认目录,c:\my_user\Source\repos然后项目就可以顺利构建了。但我想知道如何修复这个错误,因为我不想将文件保留在 C 盘上。有没有其他人遇到过这个问题,谁知道该如何修复?因为我很茫然。

编辑根据 Microsoft 文档中有关严重错误 C1083 的文章:

如果每个目录都启用了区分大小写,并且目录是由适用于 Linux 的 Windows 子系统创建的,则此错误的另一个原因是文件系统区分大小写,无论是文件名还是路径。

我的情况就是这样。当我购买这台笔记本电脑时,我使用 Windows Subsystem for Linux 中的 rsync 从我的 PC 下载了我的所有文件,包括我的 Dev 文件夹。所以这个目录不是由 Windows 创建的,而是由在 WSL 上运行的 Ubuntu 创建的。这可能是问题的原因,但我仍然不知道如何修复它。即使区分大小写,我也以正确的大小写输入文件夹,所以我不知道为什么它不起作用。

解决了如果其他人遇到此问题,则这是 WSL 的问题。我从来没有想到过这一点。如果要为 Visual Studio 项目使用使用 WSL 创建的文件夹,则必须禁用区分大小写:

  1. 以管理员身份运行 Windows Powershell
  2. 运行命令:

fsutil.exe 文件 setCaseSensitiveInfo d:\my_wsl_created_folder 禁用

这帮我解决了这个问题!

相关内容