The MASM Forum Archive 2004 to 2012

Project Support Forums => GoAsm Assembler and Tools => Topic started by: eilenbeb on January 10, 2006, 01:14:53 AM

Title: Question about GoLink
Post by: eilenbeb on January 10, 2006, 01:14:53 AM
hmm...
lib files abolished...
GoLink looks in existing (system dll?) files for linking info...

what effect would it have, then,  to assemble and link AMD64 code on win98?
i see in the sdk include files that there are now MANY conditionals regarding winxp vs 2000 etc.
do you think this GoLink feature could cause problems with different dll versions?

btw, spent hours trying to get ml64 to assemble some do-nothing code.  took mere minutes to write and assemble using GoAsm!!!
thanks, jorgon!
Title: Linking using earlier version of system
Post by: jorgon on January 10, 2006, 10:14:12 AM
eilenbeb

In the final exe, the linker lists the APIs and groups them according to which dll contains them.  In particular, no addresses for the APIs are kept in the exe.  This is normal for linkers, not just GoLink.  At load-time the addresses are inserted into the loaded image of the exe, by the system.

This means that, at link-time, the only information required by the linker is which dll holds which APIs. 

The different versions of Windows do not move APIs from one dll to another. They stay in the same dll.  This ensures that executables which have already been made can still run on later versions (all other things being equal). 

However, in later versions new APIs are added which may not be in the dlls in earlier versions.

So, there is no problem making an executable with GoLink on a machine containing an earlier version of Windows, as long as you only call APIs in that version.  If you call an API which is not in that version, the linker will tell you it can't find the API. 

If this happens there are four ways round this:-


Thanks for your report on GoAsm for 64.  It seems to be working well.
Title: Re: Question about GoLink
Post by: eilenbeb on January 10, 2006, 10:36:00 AM
tx for the reply.  all sounds good to me.
think i'm gonna dump the ms tools for a while.

more go-64 posts coming soon... heh
laters