Problems compiling Wine CVS in FreeBSD 4.8

Daniel O'Connor doconnor at gsoft.com.au
Thu Aug 28 02:51:29 CDT 2003


I am trying to compile Wine CVS to get Protel99SE working, but I am having 
some difficulty..

For example in dlls/glu32 ->
[chowder 16:50] ~/projects/wine-20030813/dlls/glu32 >gmake
gcc -c -I. -I. -I../../include -I../../include -I/usr/X11R6/include -D_REENTRANT -fPIC -D__WINESRC__  -Wall -mpreferred-stack-boundary=2 -fno-strict-aliasing -gstabs+ -Wpointer-arith  -g -o glu.o glu.c
../../tools/winebuild/winebuild -D_REENTRANT -fPIC -D__WINESRC__  -o glu32.dll.dbg.c --debug -C. glu.c
gcc -c -I. -I. -I../../include -I../../include -I/usr/X11R6/include -D_REENTRANT -fPIC -D__WINESRC__  -Wall -mpreferred-stack-boundary=2 -fno-strict-aliasing -gstabs+ -Wpointer-arith  -g -o glu32.dll.dbg.o glu32.dll.dbg.c
ld -r    glu.o  glu32.dll.dbg.o -o glu32.dll.tmp.o
strip --strip-unneeded glu32.dll.tmp.o
../../tools/winebuild/winebuild -D_REENTRANT -fPIC -D__WINESRC__  -o glu32.spec.c --spec ./glu32.spec  glu32.dll.tmp.o  -L../../dlls
gcc -c -I. -I. -I../../include -I../../include -I/usr/X11R6/include -D_REENTRANT -fPIC -D__WINESRC__  -Wall -mpreferred-stack-boundary=2 -fno-strict-aliasing -gstabs+ -Wpointer-arith  -g -o glu32.spec.o glu32.spec.c
gcc -shared  -Wl,-Bsymbolic,-z,defs glu32.spec.o    glu.o  glu32.dll.dbg.o -o glu32.dll.so -L../../dlls  -L../../libs/wine -lwine -L/usr/X11R6/lib  -lSM -lICE -lXxf86dga -lXxf86vm -lXv -lXext -lX11  -lGL -lGLU -L../../libs/port -lwine_port -L/usr/local/lib -lm -Wl,-rpath,/usr/local/lib/wine -lc
/usr/lib/libgcc.a(_eh.o): In function `__empty':
_eh.o(.text+0x9e): undefined reference to `pthread_setspecific'
/usr/lib/libgcc.a(_eh.o): In function `__get_eh_info':
_eh.o(.text+0xec): undefined reference to `pthread_key_create'
_eh.o(.text+0x1b9): undefined reference to `pthread_getspecific'
_eh.o(.text+0x1d8): undefined reference to `pthread_setspecific'
/usr/lib/libgcc.a(frame.o)(.text+0x44b): undefined reference to `pthread_mutex_lock'
/usr/lib/libgcc.a(frame.o)(.text+0x492): undefined reference to `pthread_mutex_unlock'
/usr/lib/libgcc.a(frame.o): In function `__register_frame_info':
frame.o(.text+0x8d9): undefined reference to `pthread_mutex_lock'
frame.o(.text+0x900): undefined reference to `pthread_mutex_unlock'
/usr/lib/libgcc.a(frame.o): In function `__register_frame_info_table':
frame.o(.text+0x969): undefined reference to `pthread_mutex_lock'
frame.o(.text+0x990): undefined reference to `pthread_mutex_unlock'
/usr/lib/libgcc.a(frame.o): In function `__deregister_frame_info':
frame.o(.text+0x9dc): undefined reference to `pthread_mutex_lock'
frame.o(.text+0xa27): undefined reference to `pthread_mutex_unlock'
frame.o(.text+0xa4d): undefined reference to `pthread_mutex_unlock'
gmake: *** [glu32.dll.so] Error 1

This happens in a number of dll compiles, the only way I have found to work 
around it is to comment out the line 'LDDLLFLAGS = -Wl,-Bsymbolic,-z,defs'

After changing those I now get ->
[chowder 17:14] ~/projects/wine-20030813/dlls/winmm/winearts >gmake
../../../tools/winebuild/winebuild -D_REENTRANT -fPIC -D__WINESRC__  -o winearts.drv.spec.c --spec ./winearts.drv.spec  winearts.drv.tmp.o  -L../../../dlls  -lwinmm -luser32 -lkernel32
gcc -c -I. -I. -I../../../include -I../../../include -I/usr/local/include/artsc -D_REENTRANT -fPIC -D__WINESRC__  -Wall -mpreferred-stack-boundary=2 -fno-strict-aliasing -gstabs+ -Wpointer-arith  -g -o winearts.drv.spec.o winearts.drv.spec.c
gcc -shared  -Wl,-Bsymbolic,-z,defs winearts.drv.spec.o    arts.o audio.o  winearts.drv.dbg.o -o winearts.drv.so -L../../../dlls  -L../../../libs/wine -lwine -L/usr/local/lib -lartsc -pthread -L../../../libs/uuid -lwine_uuid -L../../../libs/port -lwine_port -L/usr/local/lib -lm -Wl,-rpath,/usr/local/lib/wine -lc
audio.o: In function `wodDsGuid':
/home/darius/projects/wine-20030813/dlls/winmm/winearts/audio.c:1422: undefined reference to `DSDEVID_DefaultPlayback'
gmake: *** [winearts.drv.so] Error 1

So I comment that out :)
Now I get ->

make[1]: Leaving directory `/usr/home/darius/projects/wine-20030813/include'
gmake[1]: Entering directory `/usr/home/darius/projects/wine-20030813/miscemu'
gcc -o wine -Wl,--section-start,.interp=0x3c000100 main.o  -L../dlls -lntdll.dll -L../libs/wine -lwine -L../libs/unicode -lwine_unicode -L../libs/port -lwine_port -L/usr/local/lib
../dlls/libntdll.dll.so: undefined reference to `InterlockedCompareExchange'
../dlls/libntdll.dll.so: undefined reference to `InterlockedExchangeAdd'
gmake[1]: *** [wine] Error 1
gmake[1]: Leaving directory `/usr/home/darius/projects/wine-20030813/miscemu'
gmake: *** [miscemu] Error 2

Any patches happily tested :)

-- 
Daniel O'Connor software and network engineer
for Genesis Software - http://www.gsoft.com.au
"The nice thing about standards is that there
are so many of them to choose from."
  -- Andrew Tanenbaum
GPG Fingerprint - 9A8C 569F 685A D928 5140  AE4B 319B 41F4 5D17 FDD5




More information about the wine-devel mailing list