LINK Fails with error: LINK : fatal error LNK1000: unknown error

Started by fantasia, February 13, 2012, 06:28:41 PM

Previous topic - Next topic

hutch--

Having a quick read through the postings it looks like an incompatibility in the debug symbol build from ML and the debug build from the linker when you combine it with some component in Kip Irvine's static library. I would be inclined to get rid of the linker switch and use the ML debug symbols alone.

Generally linkers and compilers/assemblers use a debug format that is specific from version to version so debug data from one assembler output may not be compatible with a linker from a different version.
Download site for MASM32      New MASM Forum
https://masm32.com          https://masm32.com/board/index.php

fantasia

Hello Hutch!

I wasn't aware that you could leave out the linker's debug switch and retain ML's debugging symbols.

How is this achieved? Would you still issue separate ML and LINK instructions?

Thanks for your advice!

dedndave

a couple additional notes

first, make sure you have the latest Irvine32.lib file
http://kipirvine.com/asm/examples/index.htm
there was a bug in the older one   :P

second, i notice that Gerald Cahill has made a CHM help file that explains the library functions...
http://kipirvine.com/asm/files/index.html
that CHM tells you that you must pass a non-zero value in EAX for RandomRange
probably why it crashed for Michael   :P

MichaelW

I don't have time to revisit what I did right now, but I recall seeing a difference in the labels that Olly showed depending on whether or not I used the linker's debug switch.
eschew obfuscation

jj2007

Quote from: MichaelW on February 14, 2012, 07:02:54 AM
I don't have time to revisit what I did right now, but I recall seeing a difference in the labels that Olly showed depending on whether or not I used the linker's debug switch.

See Reply #3. Olly needs only /Zi for ml or JWasm and /debug for link.exe

The problem is really the incompatibility of some ml/link combinations. Use ml 6.14 or 6.15 or Jwasm, and the linker that comes with the Masm32 package, and it will work.