2011-03-15 55 views
4

有人能告诉我如何使用汇编语言编写可执行文件吗?我写了一些C代码(hello.c)并将其转换为程序集(hello.s)如何使用汇编语言编写可执行文件?(在emacs中)

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

我试图

M-x compile 

gcc hello.c -S 

从C代码使装配

M-x compile 

as hello.s 

使可执行文件

但只有a.out文件和它不是”能够执行

所以我试图

as hello.s -o aaa 

但文件 “AAA” 不可执行

+1

尝试更改aaa“chmod + x aaa”的权限 – Zimbabao 2011-03-15 04:16:47

+0

我不认为这是权限的问题。 它是目标代码。 – 2011-03-15 04:33:55

回答

3

as的输出是一个目标文件。为了使其可执行,您需要将它链接到ld,但您还需要链接它所依赖的任何对象,如果源自gcc,则至少会包含libc以及其他可能的其他对象文件。

+4

+1,但仅仅执行'gcc hello.s -o aaa'可能会更容易。 – 2011-03-15 04:35:10

+0

非常感谢你! gcc hello.s -o aaa。 这就是我想要的! – 2011-03-15 04:39:35