yasm-1.3.0

#### Beyond Linux® From Scratch (systemd Edition) - Version r13.0-1357

### Chapter 13. Programming

- Prev

  Valgrind-3.27.1

- Next

  Java-21.0.10

- Up
- Home

# yasm-1.3.0

## Introduction to yasm

Yasm is a complete rewrite of the NASM-3.02 assembler. It supports the x86 and AMD64 instruction sets, accepts NASM and GAS assembler syntaxes and outputs binary, ELF32 and ELF64 object formats.

### Note

This package is known to build and work properly using an LFS 13.1 platform.

### Package Information

- Download (HTTP): https://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz

- Download MD5 sum: fc9e586751ff789b34b1f21d572d96af

- Download size: 1.5 MB

- Estimated disk space required: 27 MB (additional 12 MB for the tests)

- Estimated build time: 0.1 SBU (additional 0.1 SBU for the tests)

### yasm Dependencies

#### Optional

cython-3.2.9 and Python2

## Installation of yasm

First, fix a problem when building with gcc-15:

    sed -e 's/def __cplusplus/ defined(__cplusplus) || __STDC_VERSION__ >= 202311L/' \
        -i libyasm/bitvect.h

Install yasm by running the following commands:

    sed -i 's#) ytasm.*#)#' Makefile.in &&

    ./configure --prefix=/usr &&
    make

To test the results, issue: make -j1 check.

Now, as the `root` user:

    make install

## Command Explanations

sed -i 's#) ytasm.*#)#' Makefile.in: This sed prevents it compiling 2 programs (vsyasm and ytasm) that are only of use on Microsoft Windows.

## Contents

Installed Program: yasm
Installed Library: libyasm.a
Installed Directory: /usr/include/libyasm

### Short Descriptions

yasm | is a portable, retargetable assembler that supports the x86 and AMD64 instruction sets, accepts NASM and GAS assembler syntaxes and outputs binaries in ELF32 and ELF64 object formats
`libyasm.a` | provides all of the core functionality of yasm, for manipulating machine instructions and object file constructs

- Prev

  Valgrind-3.27.1

- Next

  Java-21.0.10

- Up
- Home