Sha256: 35a4c5c1b177f955b40f4ebf5e5f3e917cd71229ebe4d397ee4bb80014c25e10
Contents?: true
Size: 1.51 KB
Versions: 1
Compression:
Stored size: 1.51 KB
Contents
# ruby-yasm * [Source](https://github.com/sophsec/ruby-yasm/) * [Issues](https://github.com/sophsec/ruby-yasm/issues) * [Documentation](https://rubydoc.info/gems/ruby-yasm) ## Description A Ruby interface to [YASM][yasm]. > YASM is a complete rewrite of the NASM assembler, YASM currently supports > the x86 and AMD64 instruction sets, accepts NASM and GAS assembler syntaxes, > outputs binary, ELF32, ELF64, 32 and 64-bit Mach-O, RDOFF2, COFF, Win32, > and Win64 object formats, and generates source debugging information in > STABS, DWARF 2, and CodeView 8 formats. ## Features * Supports all of the `yasm` command-line options. ## Examples Assemble a binary file: ```ruby YASM::Command.run(syntax: :gas, file: 'hello_world.S', output: 'hello_world.o') ``` Assemble amd64 assembly, in GAS syntax, into an ELF64 file with debugging information: ```ruby YASM::Command.run do |yasm| yasm.target = :amd64 yasm.syntax = :gas yasm.file = 'hello_world.S' yasm.output = 'hello_world.o' yasm.output_format = :elf64 yasm.debug_format = :stabs end ``` ## Requirements * [yasm] >= 0.8.0 * [command_mapper] ~> 0.1 ## Install ```shell $ gem install ruby-yasm ``` ### yasm * Debian / Ubuntu: ```shell $ sudo apt install yasm ``` * RedHat / Fedora: ```shell $ sudo dnf install yasm ``` * Homebrew: ```shell $ brew install yasm ``` ## License See {file:LICENSE.txt} for license information. [yasm]: https://www.tortall.net/projects/yasm/ [command_mapper]: https://github.com/postmodern/command_mapper.rb#readme
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
ruby-yasm-0.3.1 | README.md |