Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!wuarchive!kuhub.cc.ukans.edu!markv From: markv@kuhub.cc.ukans.edu Newsgroups: comp.sys.amiga.programmer Subject: Re: > SAS gripes (was DICE vs GCC) Message-ID: <1991Apr9.120932.29554@kuhub.cc.ukans.edu> Date: 9 Apr 91 17:09:32 GMT References: <1991Apr8.162329.29538@kuhub.cc.ukans.edu> <1991Apr9.163520.25545@cbnewsc.att.com> Organization: University of Kansas Academic Computing Services Lines: 70 >>>Yes, it is a known bug with BLink that you only have a 256 character command >>>line.SO what you should do instead is create a temporary link file, which is >>> done like this: >>> >>> target: obj1.o obj2.o obj3.o >>> blink >> FROM c.o obj1.o obj2.o obj3.o >>> TO target >>> smallcode smalldata nodebug >>> < >>> >>> And you don't need to create a link file. >> >> Huh? I dont recoginize this construct. I've hunted the docs for an >> "implict" temp file, but havnt' found it, could you point me at a page >> number? I still would like to know where in the manual this is mentioned and the details of the syntax. Also, I notice the < in front of the with. Is this a typo or needed. Acually, more generally, is this temp file feature specific to the with option of Blink, or is it more general purpose. > The problem now with all of the libraries is that I can not compile with > DEBUG because the libraries get too big (>256K). I can't compile just > the modules that I want to debug with DEBUG either because CPR will barf > with some kind of error, evidently confused with only finding some symbols > in the symbol table (when it does this it leaves a lock on the executable). You can make libraries bigger than 256K, just not with OML. I do one of two things to get around this problem. I either get the library under 256K by stripping debugging info from object modules (use BLINK FOO.O NODEBUG PRELINK). The ND option strips the debug info, the PRELINK leaves the references intact so it is still linkable. Otherwise, I just do: OBJS=a.o b.o c.o d.o Foo.lib: $(OBJS) join $(OBJS) as Foo.lib Blink will recognize this as a valid link lib (in the early Amiga days this was the only valid link lib). It is just that linking is a bit slower, since the lib wont have an index. Also, you can help a little (when wanting debugging info) by useing the ADDSYM option. This at least puts the names of all public symbols in the files. CPR assumes all untagged symbols are pointers to longs, but you can of course cast to other things. As for CPR and an "interrupt" key, just hit CTRL-C in the command window. The only catch is you will often be off in space in the system libs, which is bad. But you can load a module (assuming you have some idea where you are), set a breakpoint, and then safely do a go again. I've been getting real spoiled though now. I've been using Turbo Debugger on a 386 PC at work, and I sure miss hardware break/watch points. Can you say fast.... > -- > ----- > gregg.g.wonderly@att.com (AT&T bell laboratories) -- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Mark Gooderum Only... \ Good Cheer !!! Academic Computing Services /// \___________________________ University of Kansas /// /| __ _ Bix: mgooderum \\\ /// /__| |\/| | | _ /_\ makes it Bitnet: MARKV@UKANVAX \/\/ / | | | | |__| / \ possible... Internet: markv@kuhub.cc.ukans.edu ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~