Author Topic: NASM build for Windows  (Read 24602 times)

Offline johnshir

  • Jr. Member
  • *
  • Posts: 4
NASM build for Windows
« on: March 27, 2012, 08:02:19 PM »
I am trying to build NASM on a Windows Vista system and have Visual C++ 2008 express.  After downloading and unzipping the source I started a CMD window, went to the source directory and entered
 
Code: [Select]
nmake /f mkfiles/msvc.mak
as instructed in INSTALL and got the following error msg
Code: [Select]
cl /c /02 /0x /0y etc. (I shortened the line)
'cl' is not recognized as an internal or external command, operable program or batch file

It seems like I read somewhere hours ago about setting a Path, but now I can't find it and I'm not even sure if I found it on the web or somewhere in the nasm source folder.  Is this my problem, or is it something else entirely?

Thanks for any hints,
John


Offline johnshir

  • Jr. Member
  • *
  • Posts: 4
Re: NASM build for Windows
« Reply #1 on: March 27, 2012, 08:16:34 PM »
After more research I found my problem.  Instead of running nmake under the cmd window I needed to run it under the Visual Studio Command Prompt which I found in Visual Studio 2010 Express and the Visual C++ 9.0 Express Edition folders of my Start command.  I haven't looked at all the results from nmake yet, but it seemed to work.

Thanks for looking.

John

Offline Keith Kanios

  • Full Member
  • **
  • Posts: 383
  • Country: us
    • Personal Homepage
Re: NASM build for Windows
« Reply #2 on: March 27, 2012, 11:02:27 PM »
Instead of running nmake under the cmd window I needed to run it under the Visual Studio Command Prompt which I found in Visual Studio 2010 Express and the Visual C++ 9.0 Express Edition folders of my Start command.

The VS Command Prompt probably sets the PATH so that "cl" will resolve and execute via the full proper path.

You can also add this PATH info in Windows (Control Panel > System > Advanced > Environment Variables) so that it will be permanent and thus work within the standard command prompt at any time.