无法在 MAC 终端上执行二进制文件

标签 c macos shell gcc

我使用 makefile 生成文件。 gcc -c hello.c -o 你好 并通过以下方式修复了权限问题: chmod a+x ./你好 但是,当我想执行“hello”文件时。 ./你好 系统告诉我“无法执行二进制文件” 有人能帮我吗?我非常期待您的回复。

最佳答案

gcc 的 -c 参数生成一个目标文件,您稍后必须链接该文件才能生成可执行文件。您不能执行您生成的目标文件。

相反,同时编译和链接,适用于只有 1 个 .c 文件的情况

gcc hello.c -o hello

或者如果你想把它分解成单独的编译和链接步骤,做

gcc -c hello.c -o hello.o
gcc hello.o -o hello

关于无法在 MAC 终端上执行二进制文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52098129/

相关文章:

字符到位表示

xcode - 在 MainMenu.xib 上将 NSViewController 作为工作表打开

android - 我如何在 Android 中写入/cache/recovery/command?

Bash 脚本 if 语句后跟多个 OR

计算内存块中所有数字的总和和数组中所有元素的总和

我可以在 Linux 内核中调用任何 GCC 内置函数吗?

c++ - 模拟管理员用户时使用 AddIPAddress 时出现问题

linux - 如何将需要 root 权限的功能添加到 Common Lisp 库中?

macos - 如何制作验证收据的 Mac App Store 应用程序?

linux - 这行在 shell 脚本中有什么作用?