News:

MASM32 SDK Description, downloads and other helpful links
MASM32.com New Forum Link
masmforum WebSite

Compiling from non masm32 directory

Started by mfazio, February 26, 2007, 12:55:47 PM

Previous topic - Next topic

mfazio

I find it very annoying that I cannot compile my source code from a directory no located within the masm32 dir.... I keep getting the very annoying error blah blah... C:\Documents.asm... you know the one...

Is there any way i can compile without having to move all my source into masm32 dir?

cheers

TNick

There is no need to put all your source in masm32 dir:

C:\masm32\bin\ml /c /COFF /Cp /I"c:\masm32\inc" MyFile.asm

Assuming that masm32 package is on your C drive ...

Regards,
Nick

Vortex

Specifying the PATH for ml.exe and link.exe?

mfazio

I'm sorry, i dont quite follow the solution.  I understand that passing these paramaters to ml will solve the issue, however, is there a solution that will make the process automatic in the IDE. For all future projects etc...

Thanks

MichaelW

There is no requirement that you compile from a directory under the masm32 directory, just that the directory be on the same drive as masm32, and that the directory name and path have no spaces. I know of no easy way around the same-drive requirement, but a relatively easy way around the no-space requirement is to create a makeit.bat for your app (from the Script menu), save it, and then it run from the Project menu, as necessary. The only automatic solution that I know of is to meet the above requirements.
eschew obfuscation

sinsi

If you copy ML.EXE LINK.EXE MSPDB50.DLL from  C:\MASM32\BIN to your windows directory you will get basic MASM.
It really depends on your IDE - write a simple batch file (most IDE's will let you specify a batch file for your build.)
Light travels faster than sound, that's why some people seem bright until you hear them.

GregL

MASM32 is on my C: drive, my source code files are on my D: drive, it works fine.

1. Specify the full path to ml.exe, link.exe etc.
2. Use "/Ic:\masm32\include" with ml.exe
3. Use "/LIBPATH:c:\masm32\lib" with link.exe.
4. Specify only the file name (not the path) with INCLUDE and INCLUDELIB.
    For example "INCLUDE kernel32.inc"
                      "INCLUDELIB kernel32.lib"
    It will also work if you specify the full path including the drive letter, but that's too much typing.


It works for me.


MichaelW

Quote from: sinsi on February 27, 2007, 09:54:55 AM
If you copy ML.EXE LINK.EXE MSPDB50.DLL fromĀ  C:\MASM32\BIN to your windows directory you will get basic MASM.

For ML.EXE to have access to the error descriptions ML.ERR needs to be in the same directory.
eschew obfuscation

PBrennick

Hi Greg,
It works for me, also. I have the MASM32 and GeneSys SDKs on a Memory Stick and the sources are on several computers here at the nursing home. That way, I just carry the SDKs in my pocket and can use them anywhere.

The only time you need to keep them on the same drive is if you do this:

\masm32\bin\mll.exe (etc.)

instead of:

C:\masm32\bin\ml.exe (etc.)

for example.

Paul
The GeneSys Project is available from:
The Repository or My crappy website

MichaelW

I see now that I should have prefaced my post with "Assuming you are building from QE using the original batch files".
eschew obfuscation