News:

Masm32 SDK description, downloads and other helpful links
Message to All Guests

Main Menu

Can't install MASM32 on Windows 7 64-bit OS?

Started by Sieg, April 17, 2015, 05:29:06 AM

Previous topic - Next topic

Sieg

Quote from: adeyblue on April 18, 2015, 07:00:10 AM
Running
where link
in a command prompt will print out the paths of exe, script, and batch files called link that are in the path.

Ahhh, this did the trick! Turns out that Ruby has it's own link.exe that was causing the issue.



Quote from: rrr314159 on April 18, 2015, 07:14:19 AM
FWIW, I don't bother with PATH variables, just always specify the full path in command line, i.e. \masm32\bin\Link. Of course it's in a batch file, I don't type it out by hand. (I also use the menus when applicable, and other techniques, but my main tool is a batch file). After all there's a lot more to it than just the path: there are options like SUBSYSTEM, also more complicated projects have multiple .asm files and .obj's; you're not going to type all that out, are you? (Some people use RadAsm or similar, that's another story). The point is, if batch file is more-or-less inevitable, there's no problem with including the explicit path, so why not just do that, and ignore PATH environmental variable?

FWIW here's an example of a batch file I use (included in a recent "trig" project I posted)

@echo off

if exist "%1.obj" del "%1.obj"

\bin\JWasm -coff -nologo %1.asm
rem \masm32\bin\ml /c /coff "%1.asm"
if errorlevel 1 goto theend

if exist "%1.exe" del "%1.exe"

\masm32\bin\link /nologo /subsystem:console %1.obj
rem if errorlevel 1 goto theend

%1

:theend


It's named "do.bat" and I simply type "do trig" to assemble/link/run trig.asm (for example). I dunno, what's wrong with that approach?

Thanks for the suggestion! I setup a keybind shortcut in Notepad++ to run the commands to assemble and link a file, but I still wanted to find the issue as to where the unwanted link.exe was coming from. :)



Thank you everyone for the support & help. :)

jj2007

Quote from: adeyblue on April 18, 2015, 07:00:10 AM
Running
where link
in a command prompt will print out the paths of exe, script, and batch files called link that are in the path.

I keep learning :t

But I agree with rrr314159 that specifying the full path is the better choice. Environment variables are notoriously messy. Does anybody need wbem in the path? It sucks, Microsoft! My path is spoiled by various a**holes like NVIDIA, TDM-GCC and three long and only marginally different versions of c:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn (and no, "Binn" is not a misspelled "bin"). Only a handful of applications use this stone age technology.

rrr314159

Quote from: SiegAhhh, this did the trick! Turns out that Ruby has it's own link.exe that was causing the issue.

- Congrats!

Quote from: Sieg...I still wanted to find the issue as to where the unwanted link.exe was coming from.

- that's the right attitude! Leave an issue like that unresolved, and someday it will bite u in the ***

Quote from: jj2007But I agree with rrr314159...

- also the right attitude! :biggrin:
I am NaN ;)

jj2007


hutch--

There is a reason why MASM32 is built with full paths, it is so it can run in multiple environments where you can have different versions of MASM32, different versions of VC and as long as you specify complete paths instead of using environment variables, none interact with the other so you don't get these problems. The only place you set environment variables is if you write a batch file with a number of SET commands that start and finish with the duration of the batch file running.

I routinely run and develop on Win7 64 so its not a MASM32 problem, its a configuration problem.