rog*_*gcg 10 linux ubuntu assembly gnu-assembler
我正在使用Ubuntu,我正在为Linux寻找汇编编译器,我发现了GAS.
我正在尝试安装并运行它,但我不能.
wkl*_*wkl 16
as
是GNU汇编程序.它被发现binutils
但如果你这样做:
sudo apt-get install build-essential
您将获得gas
随gcc
(其中默认使用gas
组装在后端).
有关使用的"教程" gas
,您可能希望阅读使用它的"从头开始编程".
要从文件构建静态可执行.s
文件,
#!/bin/bash
f="${1:-}"
as "${f}" -o "${f%%.s}.o" && ld "${f%%.s}.0" -o "${f%%.s}"
gcc -nostdlib -static "${f}" -o "${f%%.s}"
Run Code Online (Sandbox Code Playgroud)
如果你想链接库,通常最简单的方法是让gcc使用正确的命令行选项,as
以及ld
从asm源文件构建可执行文件时.
gcc foo.s -o foo
如果foo.s
定义一个main
函数,它将起作用.
还相关:如果您在x86-64系统上编写32位程序,则在64位系统(GNU工具链)上组装32位二进制文件.