[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Problems building d-i on sparc: mklibs failed



Joerg Friedrich schrieb am Dienstag, 13. Januar 2004 um 14:45:28 +0100:
> Hi, 
> 
> I just tried to build d-i on sparc.
> System was a new installed woody upgraded to unstable.
> recent cvs checkout, all build-debs satisfied.
> btw. its a sun e450
> 
> using make TYPE=cdrom
> 
> reducing libdiscover.so.1
> Command failed with status 1 : gcc -nostdlib -nostartfiles -shared -Wl,-soname=libdiscover.so.1 -udisk_detect -ucdrom_detect -uideinterface_detect -uscsiinterface_detect -uvideo_detect -uethernet_detect -uusb_detect -uide_detect -upcmcia_detect -userial_detect -uscsi_detect -uusbinterface_detect -usoundcard_detect -upci_detect -uinit_lst -uisa_detect -uparallel_detect -ubridge_detect -o ./tmp/cdrom/tree/lib/libdiscover.so.1-so  /usr/lib//libdiscover_pic.a   -lgcc -L ./tmp/cdrom/tree/lib -L/lib/ -L/usr/lib/ -L/usr/X11R6/lib/ -L./tmp/cdrom/tree//usr/lib/cdebconf -L./tmp/cdrom/tree//usr/lib/cdebconf -L./tmp/cdrom/tree//usr/lib/cdebconf -L./tmp/cdrom/tree//usr/lib/cdebconf -L./tmp/cdrom/tree//usr/lib/cdebconf -L./tmp/cdrom/tree//usr/lib/cdebconf -L./tmp/cdrom/tree//usr/lib/cdebconf -lc -lm
> With output: /usr/bin/ld: skipping incompatible /usr/lib//libc.so when searching for -lc
> /usr/bin/ld: skipping incompatible /usr/lib//libc.a when searching for -lc
> /usr/bin/ld: skipping incompatible /usr/lib//libm.so when searching for -lm
> /usr/bin/ld: skipping incompatible /usr/lib//libm.a when searching for -lm
> /usr/bin/ld: warning: sparc architecture of input file `/usr/lib//libdiscover_pic.a(bridge.lo)' is incompatible with sparc:v9 output
> /usr/bin/ld: warning: sparc architecture of input file `/usr/lib//libdiscover_pic.a(cdrom.lo)' is incompatible with sparc:v9 output
> /usr/bin/ld: warning: sparc architecture of input file `/usr/lib//libdiscover_pic.a(disk.lo)' is incompatible with sparc:v9 output
> /usr/bin/ld: warning: sparc architecture of input file `/usr/lib//libdiscover_pic.a(ethernet.lo)' is incompatible with sparc:v9 output
> /usr/bin/ld: warning: sparc architecture of input file `/usr/lib//libdiscover_pic.a(ide.lo)' is incompatible with sparc:v9 output
> /usr/bin/ld: warning: sparc architecture of input file `/usr/lib//libdiscover_pic.a(isa.lo)' is incompatible with sparc:v9 output
> /usr/bin/ld: warning: sparc architecture of input file `/usr/lib//libdiscover_pic.a(lst.lo)' is incompatible with sparc:v9 output
> /usr/bin/ld: warning: sparc architecture of input file `/usr/lib//libdiscover_pic.a(parallel.lo)' is incompatible with sparc:v9 output
> /usr/bin/ld: warning: sparc architecture of input file `/usr/lib//libdiscover_pic.a(pci.lo)' is incompatible with sparc:v9 output
> /usr/bin/ld: warning: sparc architecture of input file `/usr/lib//libdiscover_pic.a(pcmcia.lo)' is incompatible with sparc:v9 output
> /usr/bin/ld: warning: sparc architecture of input file `/usr/lib//libdiscover_pic.a(scsi.lo)' is incompatible with sparc:v9 output
> /usr/bin/ld: warning: sparc architecture of input file `/usr/lib//libdiscover_pic.a(serial.lo)' is incompatible with sparc:v9 output
> /usr/bin/ld: warning: sparc architecture of input file `/usr/lib//libdiscover_pic.a(soundcard.lo)' is incompatible with sparc:v9 output
> /usr/bin/ld: warning: sparc architecture of input file `/usr/lib//libdiscover_pic.a(usb.lo)' is incompatible with sparc:v9 output
> /usr/bin/ld: warning: sparc architecture of input file `/usr/lib//libdiscover_pic.a(utils.lo)' is incompatible with sparc:v9 output
> /usr/bin/ld: warning: sparc architecture of input file `/usr/lib//libdiscover_pic.a(video.lo)' is incompatible with sparc:v9 output
> /usr/bin/ld: warning: sparc architecture of input file `/usr/lib//libdiscover_pic.a(conv.lo)' is incompatible with sparc:v9 output
> /usr/bin/ld: warning: sparc architecture of input file `/usr/lib//libdiscover_pic.a(modem.lo)' is incompatible with sparc:v9 output
> /usr/lib//libdiscover_pic.a(disk.lo)(.text+0x21c): In function `disk_detect':
> : undefined reference to `.umul'
> /usr/lib//libdiscover_pic.a(disk.lo)(.text+0x224): In function `disk_detect':
> : undefined reference to `.umul'
> /usr/lib//libdiscover_pic.a(disk.lo)(.text+0x2d0): In function `disk_detect':
> : undefined reference to `.umul'
> /usr/lib//libdiscover_pic.a(disk.lo)(.text+0x2e0): In function `disk_detect':
> : undefined reference to `.umul'
> /usr/lib//libdiscover_pic.a(serial.lo)(.text+0x9c8): In function `print_pnp_id':
> : undefined reference to `.div'
> /usr/lib//libdiscover_pic.a(serial.lo)(.text+0x9d8): In function `print_pnp_id':
> : undefined reference to `.rem'
> collect2: ld returned 1 exit status

ok, quick n dirty:
--- mklibs.orig 2004-01-13 16:27:52.000000000 +0100
+++ mklibs      2004-01-13 16:28:19.000000000 +0100
@@ -518,7 +518,7 @@
                 joined_symbols = ""
             # compile in only used symbols
             command(target + "gcc",
-                "-nostdlib -nostartfiles -shared -Wl,-soname=" + soname,\
+                "-m32 -nostdlib -nostartfiles -shared -Wl,-soname=" + soname,\
                 joined_symbols, \
                 "-o", dest_path + "/" + so_file_name + "-so", \
                 extra_pre_obj, \

this solved the problem. it seems that mklibs doesn't work right with
32-bit and 64-bit libraries. does anyone have an idea?
-- 
Jörg Friedrich
Die Summe der Intelligenz auf der Erde ist eine Konstante.
Die Bevölkerung wächst.
		-- Mr. Cole's Axiom



Reply to: