这篇文章:https://superuser.com/questions/724301/how-to-solve-bash-cannot-execute-binary-file无法帮我解决问题。
步骤如下:
chmod 755 ./hello.o
当我输入命令时:
file ./hello.o
消息是:
./ hello.o:找不到命令
我试试这个:
{{1}}
再次执行,消息为:
-bash:./ hello.o:无法执行二进制文件
我检查了文件版本,它是 Mach-O 格式的二进制文件。
我输入此命令:
{{1}}
它显示:
./ hello.o:Mach-0 64位对象x86_64
我该如何解决这个问题?
答案 0 :(得分:5)
从编译命令中删除-c。使用-c生成目标文件,而不是可执行文件。并且您可能不希望调用可执行文件hello.o,因为.o文件的约定是目标文件。所以gcc -o hello hello.c; ./hello