Copyright © 1999-2000 Konstantin Boldyshev. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation.
I assume you are familiar with Unix and assembly language to such an extent when you are able to understand what is written here. If you are not understanding most of what is written here, probably this HOWTO is not for you.
I expect that you will dig in and examine source code of asmutils. This document is not intended to replace the source, its goal is only to accompany asmutils source and explain some unclear moments. Again, examine ALL source code. Look how command line parsing is done, how conditional assembly for different kernel versions is done and so on -- I am not going to explain all and everything here.
Mostly this HOWTO describes a set of macros I've developed to write fast and readable; they are hiding from you unneeded details, and also take care of optimization.
You may also want to read other documentation represented on the Linux Assembly to get better general (not asmutils specific) understanding of asmutils source code.
Asmutils are build with usual GNU suite and nasm
. Except nasm
,
you will need make
, ld
, strip
, sh
, ln
, rm
,
possibly something else.
If you want to compile libc version, you will also need gcc and libc headers.
All compile-time configuration is in Makefile in src directory. There are enough comments in Makefile to figure out what you can do. Note: several utils (currently kill and eject) have their own additional configuration in the source code.