Ubuntu 22.04源码安装yasm 1.3.0

sudo lsb_release -r看到操作系统的版本是22.04sudo uname -r可以看到内核版本是5.15.0-86-genericsudo gcc --version可以看到版本是11.2.0sudo make --version可以看到版本是GNU Make 4.3

下载yasm

http://yasm.tortall.net/Download.html是yasm官网,https://github.com/yasm/yasm/是yasm的git仓库。
sudo wget -c http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz下载yasm源码。

sudo tar -xf yasm-1.3.0.tar.gz解压yasm源码。

cd yasm-1.3.0进入源码目录。

编译并安装

sudo ./configure进行配置

完成之后如下:

sudo make进行编译。

完成如下:

sudo make install安装。

yasm --version可以看到输出的内容如下:

shell 复制代码
yasm 1.3.0
Compiled on Nov  9 2023.
Copyright (c) 2001-2014 Peter Johnson and other Yasm developers.
Run yasm --license for licensing overview and summary.

代码测试

代码如下:

c 复制代码
section .data
        stringToShow db "Hello",10,0
section .bss
section .text
    global _start
    _start:
        mov rax,1
        mov rdi,1
        mov rsi,stringToShow
        mov rdx,6
        syscall
        mov rax,60
        mov rdi,0
        syscall

上边的代码使用编辑器保存成helloInYasm.asmsudo yasm -felf64 -g dwarf2 helloInYasm.asm -o helloInYasm.o进行汇编,sudo ld helloInYasm.o -o helloInYasm进行链接,sudo ./helloInYasm执行输出Hello

相关推荐
Tfly__7 小时前
在PX4 gazebo仿真中加入Mid360(最新)
linux·人工智能·自动驾驶·ros·无人机·px4·mid360
陈桴浮海7 小时前
【Linux&Ansible】学习笔记合集二
linux·学习·ansible
生活很暖很治愈8 小时前
Linux——环境变量PATH
linux·ubuntu
?re?ta?rd?ed?8 小时前
linux中的调度策略
linux·运维·服务器
深圳市九鼎创展科技8 小时前
瑞芯微 RK3399 开发板 X3399 评测:高性能 ARM 平台的多面手
linux·arm开发·人工智能·单片机·嵌入式硬件·边缘计算
hweiyu008 小时前
Linux 命令:tr
linux·运维·服务器
Trouvaille ~8 小时前
【Linux】应用层协议设计实战(一):自定义协议与网络计算器
linux·运维·服务器·网络·c++·http·应用层协议
allway28 小时前
基于华为taishan200服务器、arm架构kunpeng920 cpu的虚拟化实战
linux·运维·服务器
CSCN新手听安8 小时前
【linux】高级IO,I/O多路转接之poll,接口和原理讲解,poll版本的TCP服务器
linux·运维·服务器·c++·计算机网络·高级io·poll
杜子不疼.8 小时前
【Linux】教你在 Linux 上搭建 Web 服务器,步骤清晰无门槛
linux·服务器·前端