[pulseaudio-discuss] Error cross-compiling PulseAudio 4.99.2 for win32

Tanu Kaskinen tanu.kaskinen at linux.intel.com
Sun Jan 26 09:14:57 PST 2014


On Sun, 2014-01-26 at 11:42 +0200, Tanu Kaskinen wrote:
> 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.

My assumption that autospawning wouldn't be used on Windows turned out
to be wrong. I didn't find any evidence from the code that would suggest
that autospawing is unsupported on Windows.

I sent a patch that implements pa_thread_free_nojoin() for Windows. Can
you test it?

-- 
Tanu



More information about the pulseaudio-discuss mailing list