[Top][All Lists]

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

Re: [Mingw-cross-env-list] Re: Xine compiling error might have to do wit

From: Volker Grabsch
Subject: Re: [Mingw-cross-env-list] Re: Xine compiling error might have to do with pthreads
Date: Mon, 26 Apr 2010 16:02:58 +0200
User-agent: Mutt/1.5.13 (2006-08-11)

Tony Theodore <address@hidden> schrieb:
> On 14 April 2010 08:32, Volker Grabsch <address@hidden> wrote:
> > I tried to have a look at your xine-lib.bz2 (compressed log file),
> > but it seems to be broken. I'm unable to read or to uncompress it.
> > Could you send it again, please?

Okay, so I did some investigation of Xine-lib. I was able to solve
some issues, but in the end I got stuck (see below, section 6).
My current result is attached to this email. It would be great if
you could have a look at it. Maybe there is a simple solution that
I just don't see.

1) Static pthreads

First of all, there's no need to compile pthreads as a shared library.
The "__imp__*" issues were caused by some of Xine-lib's source files
that include <sched.h> without including <pthread.h> before:


This is not wrong, but it is unexpected. The <pthread.h> contains a
work-around to enable static linking of pthreads-w32, and I had to
add that work-around to the other pthreads headers. That solved the


2) Bzip2

The official *.bz2 package of Xine-libs seems to work fine. So maybe
you just need a more recent version of bzip2 under MacOS X? Did you
try to install bzip2 from MacPorts? Does that help?

If it does, please drop a quick note. I'd then add it to the installation
command in the requirements section of our docs.

3) DirectX

Xine-lib didn't work with our new DirectX headers. There was some
trouble regarding named/unnamed unions in <ddraw.h>.

I fixed that:

This reactivated a bug in SDL which I also fixed and reported to upstream:

4) POSIX headers

You were right that adding posix headers won't help. The required
functions simply do not exist under Windows, unless we'd a big posix
layer such as Cygwin.

However, it's just a small input plugin of Xine-lib that requires
these functions. This plugin is usually disabled when building for
win32, but the ./configure script contains a bug that prevents the
disabling. It's a typical cross-compiling bug, checking the build
system instead of the host system.

This is fixed in "xine-lib-fix-crosscompile.patch".

I also reported that bug to upstream:

5) Dependencies

I finally added all missing dependencies to $(PKG)_DEPS and
added explicit arguments to ./configure for every relevant

6) Open issue

I solved a lot of issues, but one problem remains open, and I don't
see how to fix it:

| In file included from xine_real_video_decoder.c:49:
| real_common.h:52: error: '__environ' defined both normally and as an alias
| In file included from xine_real_video_decoder.c:49:
| real_common.h:61:4: error: #error Your stderr alias is not supported, please 
report to xine developers.

I reported that to upstream, but didn't get any reply yet:

It can't be a big issue, because Xine-lib obviously has been
written with the win32 platform in mind. Maybe someone could
have a look at it?



Volker Grabsch
NotJustHosting GbR

Attachment: xine-lib.mk
Description: Text document

Attachment: xine-lib-fix-crosscompile.patch
Description: Text Data

reply via email to

[Prev in Thread] Current Thread [Next in Thread]