ddd@hou2h.UUCP (D.DUBOSKY) (01/14/85)
Is anyone else having difficulty with Microsoft's Linker L80 when using the search mode, that is, with a /s at the end of the file to be searched? I am presently trying to use the linker with the C library of SmallC v2.1. If I link the entire library with the compiled program, the resulting code works just fine, but of course, I end up with a rather large program. When using the search mode, I get error messages that indicate that the linker has not found certain modules of code. What is a little confusing is that the modules that it is trying to link are not required by the compiled code but are definitely present in the library. Any suggestions would be appreciated. Thanks for any replies. Dan Dubosky hou2h!ddd
andrew@orca.UUCP (Andrew Klossner) (01/18/85)
[] "Is anyone else having difficulty with Microsoft's Linker L80 when using the search mode, that is, with a /s at the end of the file to be searched?" There's a bug in L80. When searching a library, it encounters a module, and begins passing over the symbols to see if any are needed. If it passes over a COMMON block, then comes to an symbol which is needed, it gets a fatal system error in trying to back up to the beginning of the module and begin loading. This prevents inclusion of output from the Aztec C compiler in libraries. A work-around is to edit the assembly output from the compiler and move all the common blocks to the end of the file. I submitted a bug report to Microsoft two years ago, and received acknowledgement, but to my knowledge they have never fixed this. CP/M-80 is dead, don't you know ... -- Andrew Klossner (decvax!tektronix!orca!andrew) [UUCP] (orca!andrew.tektronix@csnet-relay) [ARPA]
mpackard@uok.UUCP (01/20/85)
+ This wonderful piece of software has 10 pages of documentation! I believe the problem is in the order of your modules. I am just guessing but this happened to me once, so I ordered the modules so the linker doesn't have to back-up. If a function in one module calls a function in another module, the caller must come before the called function. Good luck, you'll need it. {allegra,ihnp4}!convex!ctvax!uokvax!uok!mpackard
howard@cyb-eng.UUCP (Howard Johnson) (01/22/85)
> There's a bug in L80. When searching a library, it encounters a > module, and begins passing over the symbols to see if any are needed. > If it passes over a COMMON block, then comes to an symbol which is > needed, it gets a fatal system error in trying to back up to the > beginning of the module and begin loading. I purchased Microsoft's M80/L80 assembler package 2-3 months ago and the problem you mentioned about COMMON blocks is still there. -- Howard Johnson Cyb Systems, Austin, TX ..!{gatech,harvard,ihnp4,nbires,noao,seismo}!ut-sally!cyb-eng!howard