On Sat, 2014-01-25 at 13:30 -0500, Michael DePaulo wrote: > I managed to cross-compile 3.0 and 4.0 (I will post the binaries > soon), but I ran into this error on 4.99.2. > > I am using mingw32 4.8.2 on opensuse 12.3 64-bit. > > Note that I specified "-disable-orc" because I got a different error > when when ORC was enabled. > > RPM spec: > http://pastebin.com/KXuk2vcX > > build log: > http://pastebin.com/v79sheyR > > [ 81s] CCLD libpulsecommon-4.99.la > [ 81s] > [ 81s] *** Warning: Linking the shared library > libpulsecommon-4.99.la against the > [ 81s] *** static library > /usr/i686-w64-mingw32/sys-root/mingw/lib/libintl.dll.a is not > portable! > [ 81s] pulsecore/.libs/libpulsecommon_4.99_la-lock-autospawn.o: In > function `unref': > [ 81s] /home/abuild/rpmbuild/BUILD/pulseaudio-4.99.2/src/pulsecore/lock-autospawn.c:123: > undefined reference to `pa_thread_free_nojoin' > [ 81s] collect2: error: ld returned 1 exit status Thanks for reporting. pa_thread_free_nojoin() is only used with the autospawn code, and I think we don't support autospawning on Windows. Therefore, one possible fix would be to not compile lock-autospawn.c on Windows, or #ifdef the pa_thread_free_nojoin() call out. Another solution would be to make a dummy implementation of pa_thread_free_nojoin() for Windows (src/pulsecore/thread-win32.c). The function could just crash, since it's not supposed to be called. I'll have a better look into this later. If someone wants to help by writing the patch, please notify me so that we don't do duplicate work. -- Tanu