我当前的设置是 m1 MacBook Air。
\n我正在阅读一本低级编程书籍。\n
\n我希望将我编写的 C 代码编译为 x86_64 程序集。
有了 clang 我可以很容易地做到这一点:
\nclang -target x86_64 -masm=intel -S add_two_numbers.c\nRun Code Online (Sandbox Code Playgroud)\n但当我包含一个库(例如 stdio)时它不起作用。
\n\xe2\x9d\xaf clang -target x86_64 -masm=intel -S hello.c\nhello.c:1:10: fatal error: 'stdio.h' file not found\n#include <stdio.h>\n ^~~~~~~~~\nRun Code Online (Sandbox Code Playgroud)\n正如 clang 文档所说,我可以手动安装 x86_64 库并执行以下操作:
\nclang -target x86_64 -masm=intel -I path/to/Include -L path/to/Library -S hello.c\nRun Code Online (Sandbox Code Playgroud)\n但我找不到可在 MacOS 上下载的预构建包。我试过交叉编译,太费力了。
\n所以我放弃了,转而追求更简单的东西。我找到了这个问题的解决方案,我将在下面作为答案分享。
\n