[mythtv] Changes needed for Compilation on Cygwin

Robert Johnston anaerin at gmail.com
Wed Mar 22 00:19:15 UTC 2006


Having installed Cygwin, found a liblame package for it, and grabbed
the (Now included) QT packages, there are a few changes that need to
be made for Myth to compile.

(I'll come to them as "Make" dies on them).

libavcodec and libavformat require libz to be installed, but Cygwin's
linker won't find it without "-llibz" in the command-line. I'm sure
this should be there anyway, but I manually added it to the "LIBS"
string in my Makefile:

libmyth/util.cpp fails, as Cygwin doesn't have sys/sysctl.h. As a
workaround, I put #ifndef _WIN32's around the include, and the code to
get the memory amounts and getDiskSpace. In thoery you can grab the
code from http://www.opensource.apple.com/darwinsource/Current/gcc_os-1809/libiberty/physmem.c
to do the same thing in Cygwin, but a preliminary try with that broke
things more severely (As my C++ is almost non-existant). If someone
else could take a look, that'd be grand.

Enabling DirectX within configure breaks when Myth tries to compile
AudioOutputdx.cpp. Looking into this one, it seems that Cygwin doesn't
have the required headers for DirectX. I'll see what I can do on this
one and get back to y'all.

And, as a final breaker for this run, audiooutput.cpp dies a horrible
death because of a type problem:

g++ -c -pipe -march=pentiumpro -Wall -W -O3 -Wall -Wno-switch
-fomit-frame-pointer -D_REENTRANT -DPIC -fPIC  -D_WIN32 -DMMX -Di386
-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DPREFIX=\"/usr/local\"
-DLIBDIR=\"/usr/local/lib\" -DQT_NO_DEBUG -DQT_THREAD_SUPPORT
-I/usr/lib/qt3/mkspecs/cygwin-g++ -I. -I/usr/local/include
-I../libmythsamplerate -I../libmythsoundtouch -I../.. -I..
-I../../../include/qt3 -o audiooutput.o audiooutput.cpp
audiooutput.cpp:0: warning: -fPIC ignored for target (all code is
position independent)
audiooutput.cpp:1: warning: -fPIC ignored for target (all code is
position independent)
In file included from audiooutputnull.h:7,
                 from audiooutput.cpp:9:
audiooutputbase.h:146: error: field `audiotime_updated' has incomplete type
make[2]: *** [audiooutput.o] Error 1
make[2]: Leaving directory `/usr/Mythtv/libs/libmyth'
make[1]: *** [sub-libmyth] Error 2
make[1]: Leaving directory `/usr/Mythtv/libs'
make: *** [sub-libs] Error 2

--
Robert "Anaerin" Johnston


More information about the mythtv-dev mailing list