无法打开输出文件a.out:权限被拒绝,简单编译

问题描述 投票:3回答:5

我在vim中编写了一些代码,每当我尝试运行代码时它会显示:

coolmego@coolmego-PC:~/coolmego/cprograms$ gcc dfs8puzz.c 
/usr/bin/ld: cannot open output file a.out: Permission denied
collect2: ld returned 1 exit status
coolmego@coolmego-PC:~/coolmego/cprograms$ ./a.out
bash: ./a.out: No such file or directory

我该怎么办?

gcc permissions
5个回答
7
投票

移动到允许写入的目录。


0
投票

运行sudo时,实际上是以root用户身份运行命令。可能你最终弄乱了权限,以便root拥有文件。因此,当你运行sudo时,它只是工作(root可以在这些目录中写入)。你需要coolmego来拥有这些文件。例如:

sudo chown coolmego /home/coolmego/coolmego/cprograms/
chmod 700 /home/coolmego/coolmego/cprograms/

0
投票

删除/ etc / fstab中的选项用户。除非在fstab中明确给出了exec,否则fstab中有用户的任何内容都会自动挂载noexec。


0
投票

尝试为您要定位的目录提供读写权限以获取输出。如果您使用的是个人系统,可以执行“sudo chmod 777”


-4
投票

试试chmod -R 777 ~/coolmego/cprograms

© www.soinside.com 2019 - 2024. All rights reserved.