Date: Sun, 16 Apr 2000 10:27:06 +0200 (IST) From: Eli Zaretskii X-Sender: eliz AT is To: Joseph Rose cc: djgpp AT delorie DOT com Subject: Re: Problems linking In-Reply-To: <38F816C4.FBB53901@pop.gis.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Reply-To: djgpp AT delorie DOT com Errors-To: nobody AT delorie DOT com X-Mailing-List: djgpp AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk On Sat, 15 Apr 2000, Joseph Rose wrote: > > You forgot to add the library in Options > Libraries. For instance, > > with the Allegro library (similar to what you are probably using), > > type ``alleg'' somewhere into the big blue box and put an X in the > > blue column right next to it. This adds ``-lalleg'' to the linker's > > commandline. > > I tried that. I got a "Error: c:/djgpp/bin/ld.exe: cannot find > -lC:\ZZZ\GR\386P\VGADr386.o" error message. This indicates that the linker is somehow looking for an object file, not a library. Libraries have a .a extension. Do you know what is the exact file name of the VGADr386 library, and in what directory did you put it? If it's indeed C:\ZZZ\GR\386P\VGADr386.o, then this is not a library, as far as the compiler is concerned. It's an object file. Also, you named the library incorrectly in the appropriate RHIDE option. DJGPP (and Unix) libraries usually have names of the form libNAME.a, where the "lib" part is literal. When you tell RHIDE that the library's name is NAME, it instructs the linker to look for the file libNAME.a in the standard directories where libraries are installed. So using an absolute name such as C:\ZZZ\GR\386P\VGADr386.o is the wrong way to tell RHIDE about your library. I think you should simply add that file name to the list of object files, not to the list of libraries.