1. Installing nasm from source (Unix, MacOS X, Windows/Cygwin, Windows/MinGW) 2. Installing nasm from source (Windows/MS Visual C++) 1. Installing nasm from source (Unix, MacOS X, Windows/Cygwin, Windows/MinGW) ============================================================================= Installing nasm is pretty straightforward on Unix or Unix-like systems with Perl and GNU tools installed, including MinGW for Windows with MSYS installed. Perl is optional for compiling unmodified sources from a tarball, but is required to build from git or for most source modifications. If you checked out source from git you will need to run autoconf to generate configure, otherwise you don't have to. $ autoheader $ autoconf Then run configure to detect your platform settings and generate makefiles. $ ./configure You can get information about available configuration options by running `./configure --help`. If configure fails, please send bug report with detailed platform information to and we will try to help you asap! If everything went okay, type $ make to build nasm, ndisasm and rdoff tools, or $ make everything to build the former plus the docs. You can decrease the size of produces executables by stripping off unnecessary information, to achieve this run $ make strip If you install to a system-wide location you might need to become root: $ su then $ make install optionally followed by $ make install_rdf Or you can $ make install_everything to install everything =) Thats it, enjoy! 2. Installing nasm from source (Windows/MS Visual C++) ====================================================== The recommended compiler for NASM on Windows is MinGW (http://www.mingw.org), but it is also possible to compile with Microsoft Visual C++ (tested with Visual C++ 2005 Express Edition.) To do so, start the "Visual C++ Command Shell", go to the directory where the NASM source code was extracted, and run: > nmake /f Mkfiles/msvc.mak We recommend MinGW over Visual C++ 2005 as we have found it to be more up to date with regards to C99 compliance, and we are increasingly using C99 features in NASM.