Heh. We have drifted far from the original topic! Perhaps this should be a new question. Well... onward...
I should point out that my system is extremely obsolete. Things have changed, and my advice may be too outdated to be useful. Well... onward...
There are basic Unix installation instructions in the manuaL
http://www.nasm.us/xdoc/2.10.07/html/nasmdoc1.html#section-1.3.2That may be enough to get you going. I do it slightly differently. I work entirely in my home directory. This is not ideal - makes for a very cluttered home directory after a while - but it works for me. I've downloaded my .tar.gz file there, and I unpack it there - "tar zxf nasm-10.7.tar gz". (hint: you can type in just part of this and hit TAB to complete it) Assuming this goes well, "cd nasm-10.7", the top directory of the source code. Then type "./configure". This should produce a suitable Makefile. Then I type "make everything". I'm not sure the "everything" and "install_everything" targets are mentioned in the manual - they make documentation in several formats and some "rdoff" utilities (a homemade Nasm linkable format), as well as nasm and ndisasm. You probably don't need/want this, but that's the way I do it. Then I switch to root (type "su" and provide the root password) and do "make install_everything". I'm done - type "exit" (or "logout") to quit being root, and "cd" back to the directory where my source code for "hw32" and all lives.
The only reason I do "make" and "make install" as two separate steps is so I'll "own" the Nasm source files and can edit them without root permission. You probably don't need to do this. Once you've gotten by "./configure", just (as root) "make install" should do everything you need in one step. Some systems don't seem to have a separate "root" account and do everything with "sudo". In that case "sudo make install" should do everything in one step.
Now you can go back to "nasm -f elf32 hw32.asm". This should produce "hw32.o" (you can name it something else, but shouldn't need to). On a 32-bit system, you can link it with "ld -o hw32 hw32.o" - almost a palindrome
![Smiley :)](http://forum.nasm.us/Smileys/default/smiley.gif)
For a 64-bit system (which I presume Fedora 17 is) ld will be expecting to link a 64-bit file, and will need "ld -o hw32 hw32.o -melf_i386" to tell it we want a 32-bit file. At this point, typing "hw32" should get you "hello world" on the screen. Whew!
If you don't get to the end, try to remember exactly what you did, and the exact error message (or whatever happened), and we'll try to help you out.
Best,
Frank