[mythtv] [RFC v2] New Win32 build script

Lawrence Rust lvr at softsystem.co.uk
Tue Jan 18 21:29:07 UTC 2011


On Tue, 2011-01-18 at 10:39 +0800, treblid wrote:
> On Wed, Jan 5, 2011 at 9:10 PM, treblid <treblid at gmail.com> wrote:
> > ATM rebuilding with your new script and see how it goes, this will
> > probably take a few hours (and I can only get back to you tomorrow as
> > it's lateish now here in Australia)... Seems to be hitting walls no
> > matter what I do, yet strangly it's quite fun.. :/
> Success! I'm using Mandriva and after I install the wine packages from
> Mandriva. The release build finally work. More or less.

Good news.

> I had to hack taglib and hack out a line as the pre-processor seems to
> add a "_" to a gzip function call. And disable the mythmusic plugin
> because for some reason it either couldn't link to or find taglib.

It would be useful to see the config.ep and config.mak files in the
mythtv folder produced from the build.

> The big issue though is that when entering or exiting playback
> occasionally generates the following assert error:
> ---
> QEventDispatcherWin32::unregisterTimer: invalid argument
> QEventDispatcherWin32::unregisterTimer: invalid argument
> ASSERT failure in QCoreApplication::sendEvent: "Cannot send events to objects ow
> ned by a different thread. Current thread fee71a8. Receiver '' (of type 'Preview
> Generator') was created in thread 1c36d168", file kernel/qcoreapplication.cpp, l
> ine 349
> 
> This application has requested the Runtime to terminate it in an unusual way.
> Please contact the application's support team for more information.
> ---
> That may or may not be a win32 build issue though. All in all I'm
> happy and will try to get a debug build soon (hope that works).

The assert shows that you're running a debug build of Qt.  The traceback
from wine should be sufficient to find the cause of the problem.

> Is there any update to the script, and by any chance will they be
> included in GIT? Thanks for your effort, and help.

Coincidentally, I have just put the finishing touches to this final
release which will cross compile, compile natively on Windows using Msys
or produce a native build on Linux (Intel and PowerPC) and maybe MacOSX
too.  You can find it here:

http://www.softsystem.co.uk/download/mythtv/mythbuild-110118.zip

I'll be submitting this to Trac later.  Hopefully this can be put under
git sometime soon if the devs think that it is worth it.

Usage:

$ unzip mythbuild-110118.zip && chmod +x mythbuild.sh

NB the patches too are now downloaded at runtime from the web.

# For general info on the script
$ ./mythbuild -h

# To cross-compile latest MythTV master branch with debugging:
$ ./mythbuild -b master -d

# To cross-compile MythTV fixes/0.24 branch:
$ ./mythbuild -b fixes/0.24

# To build MythTV fixes/0.24 branch on Windows/Msys:
$ ./mythbuild

NB a Windows build system will need 2GB of VM, physical preferably, and
5GB disc space.

The Windows builds produce a self-extracting zip archive that will
auto-run and install on any Windows 2K system or later.

# To compile latest MythTV master branch with debug on Linux/other:
$ ./mythbuild -b master -d -H

The non-Windows build produces an archive that can be expanded and run
on another similar systems without installation.  It still depends on
basic system libraries such as X, zlib, pthreads etc but all the other
libs are included.  You'll need to set LD_LIBRARY_PATH if the
installation path is changed.

NB the script uses basic coreutils only so should work on MacOSX systems
too.  Anyone willing to try?

HTH

--Lawrence




More information about the mythtv-dev mailing list