【发布时间】:2011-04-14 00:14:10
【问题描述】:
我编译这个程序:
#include <stdio.h>
int main()
{
printf("Hello World!");
return 0;
}
使用这个命令:
gcc -c "hello.c" -o hello
当我尝试执行 hello 时,我得到了
bash: ./hello: Permission denied
因为权限是
-rw-r--r-- 1 nathan nathan 856 2010-09-17 23:49 hello
出于某种原因??
但是无论如何...在更改权限并尝试再次执行后,我得到了
bash: ./hello: cannot execute binary file
我正在使用 gcc (Ubuntu 4.4.3-4ubuntu5) 4.4.3
我在这里做错了什么?这一定很明显……我用疲倦的眼睛试图弄清楚这个简单的问题已经太晚了……
附:我确实(有时)在比 Hello World 更复杂的程序上工作,但 gcc 正在全面这样做......
【问题讨论】:
-
执行:file hello 并将结果粘贴到此处。你应该编译: gcc hello.c -o hello
-
总是询问所有警告和调试信息(例如
gcc -Wall -g hello.c -o hello)
标签: linux gcc permissions binary