Mail Archives: djgpp/1996/01/11/06:41:58
On Thu, 11 Jan 1996 coomar AT iitk DOT ernet DOT in wrote:
> I have a library ".lib" compiled using TURBO-C and I have another
> library ".a" compiled using djgpp+gcc. I now want to link this ".a" library
> to my ".lib" library so that I can write my programs in Turbo-C using my
> new ".lib" . Is it possible at all. I work on a 486DX-33Mhz running DOS-6.22 .
This one's from the FAQ (available as faq102.zip from the same place you
get DJGPP):
17.4 Q: I have a set of useful functions in a .obj format, but no source
code. Can I use them with my DJGPP program?
Q: I have this ACMELUXE.LIB library of functions which I want to
use. I've extracted all the .obj files, but when I try to link
them with my program, gcc complains: ``File format not
recognized''. Can't I use these object files?
Q: I've got a bunch of .obj files I want to use. I've ran AR to
make a Unix-style .a object library, but got an error message
from gcc saying ``couldn't read symbols: No symbols''. How can I
link them with my code?
A: Sorry, you can't. The GNU linker called by gcc doesn't
understand the format of .obj files which other DOS-based
compilers/assemblers emit. Unless you can get the source of
those functions and compile them with gcc, you won't be able to
use them. (You can also try using LIB32 librarian from Microsoft
C8 to convert object files to COFF.) But don't feel too bad
about it: most probably, they were written for real-mode
programs, and without extensive modifications would have crashed
your program anyway...
- Raw text -