【发布时间】:2017-10-28 20:55:12
【问题描述】:
我正在使用 cygwin 编译和 windows 10。我的问题是每当我尝试编译时都会收到错误消息:
/usr/lib/gcc/x86_64-pc-cygwin/6.4.0/../../../../x86_64-pc-cygwin/bin/ld: 无法打开输出文件 a.exe: Permission denied collect2: error: ld returned 1 exit status
它开始于我编译一个创建文件然后写入该文件的程序,但我不知道为什么我的计算机不允许我在程序中创建文件。我不知道如何修复它,所以我可以写入文件。任何帮助表示赞赏。
【问题讨论】:
-
我的用户已经是管理员,所以我应该能够创建和写入文件吧?
-
抱歉没有完整阅读这个问题,我的错。您可以以管理员身份运行 您的程序(不是 cygwin)或更改权限以允许所有人写入您的程序尝试写入的目录。
-
好的,但我的用户不是已经拥有权限,因为它是管理员还是我需要为该文件夹设置特殊权限?
-
您的用户可能,并不意味着程序可以。您可以设置目录,以便任何东西都可以写入,或者给程序正确的权限级别。正如第一个答案所暗示的那样,您也可以尝试通过 windows 以管理员身份运行 Cygwin,尽管我不明白为什么这会产生任何影响,因为它不应该改变通过 Cygwin 运行的程序的权限级别。
-
好的,那么如何更改程序而不是用户的权限呢?还有没有办法在不使用cygwin的情况下运行程序?
标签: c++ compiler-errors cygwin writetofile