The MASM Forum

General => The Workshop => Topic started by: pgw001 on February 18, 2014, 10:30:48 PM

Title: Support for MASM in Visual Studio 2012 / 2013
Post by: pgw001 on February 18, 2014, 10:30:48 PM
Hi everyone I am a new user of the Forum and am still finding my way around.
It would be very helpful if someone could point me to a definitive procedure for
using MASM in Visual Studio and what, if any, limitations exist.

Specific questions I am still pondering:

Are the MASM libraries required for VS operation?
Attempts in VS2013 to assemble a sample program which includes the MASM32 libraries
is resulting in an assembler error message : Error   2   error LNK1181: cannot open input file 'kernel32.lib'
Inspection of the MASM32 libraries shows that 'kernel32.lib' is present

Any assistance would be much appreciated

Title: Re: Support for MASM in Visual Studio 2012 / 2013
Post by: dedndave on February 18, 2014, 11:06:03 PM
Kip uses his own libraries, but his pages should still be helpful in setting it up

http://www.asmirvine.com/ (http://www.asmirvine.com/)

sounds like a path issue - maybe related to the LIB environment variable
Title: Re: Support for MASM in Visual Studio 2012 / 2013
Post by: jj2007 on February 18, 2014, 11:30:20 PM
Quote from: pgw001 on February 18, 2014, 10:30:48 PM
Attempts in VS2013 to assemble a sample program which includes the MASM32 libraries
is resulting in an assembler error message : Error   2   error LNK1181: cannot open input file 'kernel32.lib'
Inspection of the MASM32 libraries shows that 'kernel32.lib' is present

"Present" doesn't mean it's visible to link.exe...
As Dave wrote, it's probably a path isssue. Do you use full paths, as in the example below?

include \masm32\include\masm32rt.inc

.code
AppName   db "Masm32:", 0

start:   MsgBox 0, "Hello World", addr AppName, MB_OK
   exit

end start
Title: Re: Support for MASM in Visual Studio 2012 / 2013
Post by: TWell on February 19, 2014, 01:28:49 AM
I use /useenv when testing masm32
@REM StartMSIDE.cmd
@SET VCEDIR="C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE"
@SET VCDIR="C:\Program Files\Microsoft Visual Studio 9.0\VC"
@SET SDKDIR=C:\Program Files\Microsoft SDKs\Windows\v6.0A
@SET MASM32DIR=M:\masm32
@SUBST M: C:\code1
@SET PATH=%VCDIR%\bin;%VCEDIR%;%SDKDIR%\bin;%windir%\system32
@SET INCLUDE=%MASM32DIR%\include
@SET LIB=%MASM32DIR%\lib;%SDKDIR%\lib;%VCDIR%\lib
@START "Microsoft Visual Studio 9.0" "C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\VCExpress.exe" /useenv
Title: Re: Support for MASM in Visual Studio 2012 / 2013
Post by: pgw001 on February 19, 2014, 01:32:04 AM
Folks,

Many thanks for the prompt and helpful responses, the link is just what
I was looking for. With regard to the suspect Path problem the sample
program contains the following :
                include \masm32\include\masm32rt.inc

I have not defined any path statements?

Thanks again..