pkgsrc-Bugs archive

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

Re: SDL fails to build on Debian 3.1 GNU/Linux - 20050811



[ moved to tech-pkg%NetBSD.org@localhost because pkgsrc-bugs deals with 
submitted
  problem reports ]

Fernando Silveira wrote:
> Hi,
> 
> I'm trying to compile "mplayer" on Debian but "pkgsrc" gives me this

Which version of pkgsrc are you using? On non-NetBSD platforms I tend to
use the stable branches (pkgsrc-2005Q2 at the moment) instead of the
current HEAD of pkgsrc.

> error when starts compiling SDL:
...
> cc
> -shared  .libs/SDL.o .libs/SDL_error.o .libs/SDL_fatal.o .libs/SDL_getenv.o 
> .libs/SDL_loadso.o -Wl,--whole-archive main/.libs/libarch.a 
> audio/.libs/libaudio.a video/.libs/libvideo.a events/.libs/libevents.a 
> joystick/.libs/libjoystick.a cdrom/.libs/libcdrom.a thread/.libs/libthread.a 
> timer/.libs/libtimer.a endian/.libs/libendian.a file/.libs/libfile.a 
> cpuinfo/.libs/libcpuinfo.a hermes/.libs/libhermes.a -Wl,--no-whole-archive  
> -Wl,--rpath -Wl,/usr/pkgsrc/devel/SDL/work/.buildlink/lib -Wl,--rpath 
> -Wl,/usr/pkgsrc/devel/SDL/work/.buildlink/lib 
> -L/usr/pkgsrc/devel/SDL/work/.buildlink/lib 
> -L/usr/pkgsrc/devel/SDL/work/.x11-buildlink/lib -ldl -lXext 
> /usr/pkgsrc/devel/SDL/work/.buildlink/lib/libaa-x11.so -lm -lX11 -lpthread  
> -Wl,-R/usr/pkg/lib -Wl,-R/usr/X11R6/lib -Wl,-rpath -Wl,/usr/pkg/lib 
> -Wl,-soname -Wl,libSDL.so.1 -o .libs/libSDL.so.1.0.8

Except for the compiler name ("gcc" for me) this looks exactly the same
here.

> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/usr/pkgsrc/devel/SDL/work/SDL-1.2.8/src'
> make: *** [all-recursive] Error 1
> *** Error code 2
> 
> Stop.
> pmake: stopped in /usr/pkgsrc/devel/SDL
  ^^^^^
Where does this come from? The make-program for pkgsrc is called
"bmake" and the make-program used inside SDL is GNU make (/usr/bin/make
on Debian 3.1).


> Looking closer, I opened "libhermes.a" and saw that all the object files
> are NetBSD/i386 objects, but my OS is Linux. :-!?
> 
> # file work/SDL-1.2.8/src/hermes/mmx_main.o 
> work/SDL-1.2.8/src/hermes/mmx_main.o: a.out NetBSD/i386 object file not
> stripped

$ file *.o
mmx_main.o: ELF 32-bit LSB relocatable, Intel 80386, version 1 (SYSV), not 
stripped
mmxp2_32.o: ELF 32-bit LSB relocatable, Intel 80386, version 1 (SYSV), not 
stripped
x86_main.o: ELF 32-bit LSB relocatable, Intel 80386, version 1 (SYSV), not 
stripped
x86p_16.o:  ELF 32-bit LSB relocatable, Intel 80386, version 1 (SYSV), not 
stripped
x86p_32.o:  ELF 32-bit LSB relocatable, Intel 80386, version 1 (SYSV), not 
stripped

> Any ideas on how to solve this?

The object files in libhermes.a were created by the nasm assembler:

  /bin/sh ../../libtool --tag=CC --mode=compile sh ../../strip_fPIC.sh
   /opt/pkg/bin/nasm -f elf mmx_main.asm -o mmx_main.o

Just try building again and see what this looks like for you.

ciao
     Klaus



Home | Main Index | Thread Index | Old Index