正如标题所示,如果我将其他地方写入的ac文件粘贴到Linux子系统的根目录中,我无法编译它。
我做了一个testing,在这里我做了两个不同的标题hello world programs:一个是vi,我可以从bash界面进入,另一个在其他地方。 当我编译vi制作的时候,效果很好。 试图为其他地方(粘贴到根目录之后)这样做,结果是:
gcc: error: helloWorld2.c: Input/output error gcc: fatal error: no input files compilation terminated
任何帮助,将不胜感激。
不要使用Windows应用程序和工具更改Linux文件!
假设你将“将其他地方的C文件粘贴到Linux子系统的根目录”的%localappdata%\lxss
是你将文件粘贴到%localappdata%\lxss
,这是明确不支持的 。 本地通过Linux系统调用创建的文件具有UNIX元数据,而使用Windows工具本地创建的文件没有。
使用/mnt/c
(等)从Linux访问您的Windows文件; 不要尝试从Windows修改Linux文件。
从这个答案的顶部链接微软博客引用(重点从原来的):
因此,请务必遵循这两条规则,以避免丢失文件和/或破坏您的数据:
- 请将文件存储在您要使用Windows工具和Linux工具创建/修改的Windows文件系统中
- 不要从Windows应用程序,工具,脚本或控制台创建/修改Linux文件
您不能复制(默认情况下,谁知道如何设置Windows bash
!)文件到根目录! 你的gcc
错误是说“没有输入文件”,所以副本最有可能失败。 而不是将文件复制到您的主目录,例如:
cp helloWorld2.c ~/
代替:
cp helloWorld2.c /