Linux 如何从汇编语言生成可执行文件?(在emacs中)

Linux 如何从汇编语言生成可执行文件?(在emacs中),linux,gcc,emacs,assembly,ubuntu,Linux,Gcc,Emacs,Assembly,Ubuntu,有人能告诉我如何用汇编语言制作可执行文件吗? 我的环境是Ubuntu+Emacs+GCC 为了便于学习,我编写了一些C代码(hello.C)并将其转换为汇编(hello.s) 我想从程序集编写的文件中生成一个可执行文件 我试过了 M-x compile gcc hello.c -S 从C代码生成程序集 及 制作可执行文件 但是只有一个.out文件,它无法执行 所以我试过了 as hello.s -o aaa 但是文件“aaa”不是可执行文件的输出是一个对象文件。要使其可执行,您需要将其链接

有人能告诉我如何用汇编语言制作可执行文件吗? 我的环境是Ubuntu+Emacs+GCC 为了便于学习,我编写了一些C代码(hello.C)并将其转换为汇编(hello.s)

我想从程序集编写的文件中生成一个可执行文件

我试过了

M-x compile

gcc hello.c -S
从C代码生成程序集

制作可执行文件

但是只有一个.out文件,它无法执行

所以我试过了

as hello.s -o aaa

但是文件“aaa”不是可执行文件

的输出是一个对象文件。要使其可执行,您需要将其链接到
ld
,但您还需要链接它所依赖的任何对象,如果源代码是从gcc生成的,则至少包括libc,以及可能的其他一些对象文件。

尝试更改aaa“chmod+x aaa”的权限。我认为这不是权限问题。这是目标代码。非常感谢!gcc你好,s-o aaa。这正是我想要的!!
as hello.s -o aaa