I am now able to make a new alleg.a file  (with GCC 14.2 cross-compiling)...
but I cannot link a program file... either from the examples or from the one 
that come with
the library (make programs)... because apparently all the functions seems to be 
defined
both in the program and in the library.

It spits multiple definitions errors for about 2 mins before failing:
$ make tools/dat2s.exe
...
/usr/local/cross/lib/gcc/i386-pc-msdosdjgpp/14.2.0/../../../../i386-pc-msdosdjgpp/bin/ld:
 lib/djgpp/liballeg.a(fontbios.o):fontbios.c:(.text+0x17b0): multiple 
definition of `textout_justify'; 
obj/djgpp/alleg/dat2s.o:dat2s.c:(.text+0x3680): first defined here
/usr/local/cross/lib/gcc/i386-pc-msdosdjgpp/14.2.0/../../../../i386-pc-msdosdjgpp/bin/ld:
 lib/djgpp/liballeg.a(fontbios.o):fontbios.c:(.text+0x17f0): multiple 
definition of `draw_character'; obj/djgpp/alleg/dat2s.o:dat2s.c:(.text+0x36c0): 
first defined here
/usr/local/cross/lib/gcc/i386-pc-msdosdjgpp/14.2.0/../../../../i386-pc-msdosdjgpp/bin/ld:
 lib/djgpp/liballeg.a(fontbios.o):fontbios.c:(.text+0x1820): multiple 
definition of `gui_textout'; obj/djgpp/alleg/dat2s.o:dat2s.c:(.text+0x36f0): 
first defined here
/usr/local/cross/lib/gcc/i386-pc-msdosdjgpp/14.2.0/../../../../i386-pc-msdosdjgpp/bin/ld:
 lib/djgpp/liballeg.a(fontbios.o):fontbios.c:(.text+0x1860): multiple 
definition of `set_window_close_button'; 
obj/djgpp/alleg/dat2s.o:dat2s.c:(.text+0x3730): first defined here
/usr/local/cross/lib/gcc/i386-pc-msdosdjgpp/14.2.0/../../../../i386-pc-msdosdjgpp/bin/ld:
 lib/djgpp/liballeg.a(fontbios.o):fontbios.c:(.text+0x1870): multiple 
definition of `set_window_close_hook'; 
obj/djgpp/alleg/dat2s.o:dat2s.c:(.text+0x3740): first defined here
/usr/local/cross/lib/gcc/i386-pc-msdosdjgpp/14.2.0/../../../../i386-pc-msdosdjgpp/bin/ld:
 lib/djgpp/liballeg.a(fontbios.o):fontbios.c:(.text+0x1880): multiple 
definition of `yield_timeslice'; 
obj/djgpp/alleg/dat2s.o:dat2s.c:(.text+0x3750): first defined here
/usr/local/cross/lib/gcc/i386-pc-msdosdjgpp/14.2.0/../../../../i386-pc-msdosdjgpp/bin/ld:
 lib/djgpp/liballeg.a(fontbios.o):fontbios.c:(.text+0x18a0): multiple 
definition of `set_file_encoding'; 
obj/djgpp/alleg/dat2s.o:dat2s.c:(.text+0x3770): first defined here
/usr/local/cross/lib/gcc/i386-pc-msdosdjgpp/14.2.0/../../../../i386-pc-msdosdjgpp/bin/ld:
 lib/djgpp/liballeg.a(fontbios.o):fontbios.c:(.text+0x18b0): multiple 
definition of `get_file_encoding'; 
obj/djgpp/alleg/dat2s.o:dat2s.c:(.text+0x3780): first defined here
/usr/local/cross/lib/gcc/i386-pc-msdosdjgpp/14.2.0/../../../../i386-pc-msdosdjgpp/bin/ld:
 lib/djgpp/liballeg.a(fontbios.o):fontbios.c:(.text+0x18c0): multiple 
definition of `_set_color'; obj/djgpp/alleg/dat2s.o:dat2s.c:(.text+0x3790): 
first defined here
/usr/local/cross/lib/gcc/i386-pc-msdosdjgpp/14.2.0/../../../../i386-pc-msdosdjgpp/bin/ld:
 lib/djgpp/liballeg.a(fontbios.o):fontbios.c:(.text+0x18f0): multiple 
definition of `_grow_scratch_mem'; 
obj/djgpp/alleg/dat2s.o:dat2s.c:(.text+0x37c0): first defined here
collect2: error: ld returned 1 exit status
make: *** [makefile.all:536: tools/dat2s.exe] Error 1
[paul@betakard allegro-4.2.3.1]$ 

I belived to have build the lib with -fcommon... but -fcommon seems more about 
global variables then functions... I think.


_______________________________________________
Freedos-devel mailing list
Freedos-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-devel

Reply via email to