mac osx yosemite gcc无法执行二进制文件,找不到命令

Sir*_*ang 1 c macos bash xcode gcc

这篇文章:https://superuser.com/questions/724301/how-to-solve-bash-cannot-execute-binary-file无法帮助我解决我的问题.

步骤如下:

gcc -c hello.c -o hello.o
Run Code Online (Sandbox Code Playgroud)

当我输入命令:

./hello.o
Run Code Online (Sandbox Code Playgroud)

消息是:

./hello.o:找不到命令

我试试这个:

chmod 755 ./hello.o
Run Code Online (Sandbox Code Playgroud)

再次执行,消息是:

-bash:./ hello.o:无法执行二进制文件

我检查了文件版本,它是二进制文件的Mach-O格式.

我输入这个命令:

file ./hello.o
Run Code Online (Sandbox Code Playgroud)

表明:

./hello.o:Mach-0 64位对象x86_64

我怎么解决这个问题?

Sas*_*hev 6

从编译命令中删除-c.使用-c生成目标文件,而不是可执行文件.并且您可能不希望调用可执行文件hello.o,因为.o文件的约定是目标文件.所以gcc -o hello hello.c; ./hello