[mythtv-users] Compiling mythtv with directfb fails on via epia M6000

Thomas Seifert thomas at seifertfamily.org
Sun Mar 14 15:21:01 EST 2004


Hi,

for the last several days i tried to compile mythtv with qt-embedded and 
direct fb.

with several hints from some google sessions i figured out how to compile 
qt-emb and mythtv, but several problems occur:

Support for CLE266 fails:

viaslice.c: In function `VIA_field_start':
viaslice.c:21: parse error before `int'
viaslice.c:25: `i' undeclared (first use in this function)
viaslice.c:25: (Each undeclared identifier is reported only once
viaslice.c:25: for each function it appears in.)
viaslice.c:25: `j' undeclared (first use in this function)
viaslice.c:25: warning: left-hand operand of comma expression has no effect
viaslice.c:25: warning: left-hand operand of comma expression has no effect
viaslice.c:33: warning: left-hand operand of comma expression has no effect
viaslice.c:33: warning: left-hand operand of comma expression has no effect
viaslice.c:88: warning: implicit declaration of function `VIABeginPicture'
make[2]: *** [viaslice.o] Error 1
make[2]: Leaving directory `/home/thomas/mythtv-0.14/libs/libavcodec'
make[1]: *** [sub-libavcodec] Error 2
make[1]: Leaving directory `/home/thomas/mythtv-0.14/libs'
make: *** [sub-libs] Error 2

my C knowledge is basic but I can't see an error in the source of viaslice.c, 
so i commented it out in settings.pro and went further

-fno-rtti errors:

g++ -c -pipe -DQWS -fno-exceptions -fno-rtti `directfb-config --cflags` -O3 
-march=pentiumpro -fomit-frame-pointer -D_REENTRANT -fPIC  -D_GNU_SOURCE 
-D_FILE_OFFSET_BITS=64 -DPREFIX=\"/usr/local\" -DMMX -DUSE_ALSA -DUSE_LIRC 
-DQT_NO_DEBUG -DQT_THREAD_SUPPORT -DQT_SHARED 
-I/opt/qt-embedded-free-3.3.1/mkspecs/default -I. -I/usr/local/include 
-I/opt/qt-embedded-free-3.3.1/include -o uitypes.o uitypes.cpp
uitypes.cpp: In method `void LayerSet::ClearAllText()':
uitypes.cpp:77: taking dynamic typeid of object with -fno-rtti
uitypes.cpp:77: confused by earlier errors, bailing out
cpp0: output pipe has been closed
make[2]: *** [uitypes.o] Error 1
make[2]: Leaving directory `/home/thomas/mythtv-0.14/libs/libmyth'
make[1]: *** [sub-libmyth] Error 2
make[1]: Leaving directory `/home/thomas/mythtv-0.14/libs'
make: *** [sub-libs] Error 2

and

g++ -c -pipe -DQWS -fno-exceptions -fno-rtti `directfb-config --cflags` -O3 
-march=pentiumpro -fomit-frame-pointer `freetype-config --cflags` 
-D_REENTRANT -fPIC  -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 
-DPREFIX=\"/usr/local\" -DMMX -DUSING_DIRECTFB -DQT_NO_DEBUG 
-DQT_THREAD_SUPPORT -DQT_SHARED -I/opt/qt-embedded-free-3.3.1/mkspecs/default 
-I. -I/usr/local/include -I../libmyth -I.. -Idvbdev -I../libavcodec 
-I/opt/qt-embedded-free-3.3.1/include -o osd.o osd.cpp
osd.cpp: In method `void OSD::NewDialogBox(const QString &, const QString &, 
QStringList &, int)':
osd.cpp:1316: taking dynamic typeid of object with -fno-rtti
osd.cpp:1316: confused by earlier errors, bailing out
cpp0: output pipe has been closed
make[2]: *** [osd.o] Error 1
make[2]: Leaving directory `/home/thomas/mythtv-0.14/libs/libmythtv'
make[1]: *** [sub-libmythtv] Error 2
make[1]: Leaving directory `/home/thomas/mythtv-0.14/libs'
make: *** [sub-libs] Error 2

uncommenting "-fno-rtti" when compiling these files works

and finally:
g++ -Wl,-rpath,/opt/qt-embedded-free-3.3.1/lib -o mythepg main.o    
-L/opt/qt-embedded-free-3.3.1/lib -L../../libs/libmyth -L../../libs/libmythtv 
-L../../libs/libavcodec -L../../libs/libavformat -lmythtv-0.14 
-lmythavformat-0.14 -lmythavcodec-0.14 -lmyth-0.14 -lfreetype -lmp3lame 
`directfb-config --libs` -lqte-mt -lpthread
../../libs/libmyth/libmyth-0.14.so: undefined reference to `MythDialog 
type_info node'
../../libs/libmyth/libmyth-0.14.so: undefined reference to `QDialog type_info 
node'
../../libs/libmyth/libmyth-0.14.so: undefined reference to 
`UIRepeatedImageType type_info function'
../../libs/libmyth/libmyth-0.14.so: undefined reference to `QEvent type_info 
function'
../../libs/libmyth/libmyth-0.14.so: undefined reference to `MythDialog 
type_info function'
../../libs/libmyth/libmyth-0.14.so: undefined reference to `UICheckBoxType 
type_info function'
../../libs/libmyth/libmyth-0.14.so: undefined reference to `UIPushButtonType 
type_info function'
../../libs/libmyth/libmyth-0.14.so: undefined reference to `UIType type_info 
node'
../../libs/libmyth/libmyth-0.14.so: undefined reference to `QWidget type_info 
function'
../../libs/libmyth/libmyth-0.14.so: undefined reference to `QDialog type_info 
function'
../../libs/libmythtv/libmythtv-0.14.so: undefined reference to `QGArray 
type_info node'
../../libs/libmyth/libmyth-0.14.so: undefined reference to `UIImageType 
type_info function'
../../libs/libmyth/libmyth-0.14.so: undefined reference to `QGDict type_info 
function'
../../libs/libmyth/libmyth-0.14.so: undefined reference to `QGList type_info 
function'
../../libs/libmyth/libmyth-0.14.so: undefined reference to 
`UIManagedTreeListType type_info function'
../../libs/libmythtv/libmythtv-0.14.so: undefined reference to `QGArray 
type_info function'
../../libs/libmyth/libmyth-0.14.so: undefined reference to `UITextButtonType 
type_info function'
../../libs/libmyth/libmyth-0.14.so: undefined reference to `QGDict type_info 
node'
../../libs/libmyth/libmyth-0.14.so: undefined reference to `UIType type_info 
function'
../../libs/libmyth/libmyth-0.14.so: undefined reference to `UISelectorType 
type_info function'
../../libs/libmyth/libmyth-0.14.so: undefined reference to `QEvent type_info 
node'
../../libs/libmyth/libmyth-0.14.so: undefined reference to `UIBlackHoleType 
type_info function'
../../libs/libmyth/libmyth-0.14.so: undefined reference to `QGList type_info 
node'
collect2: ld returned 1 exit status
make[2]: *** [mythepg] Error 1
make[2]: Leaving directory `/home/thomas/mythtv-0.14/programs/mythepg'
make[1]: *** [sub-mythepg] Error 2
make[1]: Leaving directory `/home/thomas/mythtv-0.14/programs'
make: *** [sub-programs] Error 2

don't know what to to. environment variables are set:

echo $QMAKESPEC
/opt/qt-embedded-free-3.3.1/mkspecs/qws/linux-x86-g++

echo $QTDIR
/opt/qt-embedded-free-3.3.1

/opt/qt-embedded-free-3.3.1/lib is in /etc/ld.so.conf

my settings.pro:

INCLUDEPATH += $${PREFIX}/include
INCLUDEPATH *= /usr/local/include

DEFINES += _GNU_SOURCE
DEFINES += _FILE_OFFSET_BITS=64
DEFINES += PREFIX=\"$${PREFIX}\"

release {
        DEFINES += MMX
        QMAKE_CXXFLAGS_RELEASE = -O3 -march=pentiumpro -fomit-frame-pointer
        QMAKE_CFLAGS_RELEASE = $${QMAKE_CXXFLAGS_RELEASE}
}

EXTRA_LIBS = -lfreetype -lmp3lame

# Default Xv support
# CONFIG += using_xv
# EXTRA_LIBS += -L/usr/X11R6/lib -lXinerama -lXv -lX11 -lXext -lXxf86vm

# IVTV output (PVR-350) support.  No need to disable unless building on 
windows
# CONFIG += using_ivtv
# DEFINES += USING_IVTV

# LCDProc support
#DEFINES += LCD_DEVICE

# Native ALSA support
CONFIG += using_alsa
ALSA_LIBS = -lasound

# Native ARTS support
#CONFIG += using_arts
#ARTS_LIBS = -L/opt/kde3/lib -ldl -lartsc -lpthread
#EXTRA_LIBS += -L/opt/kde3/lib -ldl -lartsc -lpthread
#INCLUDEPATH += /opt/kde3/include

# DVB support
#CONFIG += using_dvb
#DEFINES += USING_DVB
# Note: INCLUDEPATH should point to the directory with
#   'linux/dvb/frontend.h', not the directory with frontend.h
#INCLUDEPATH += /usr/src/linuxtv-dvb-1.0.1/include

# Native lirc support
CONFIG += using_lirc
LIRC_LIBS = -llirc_client

# XvMC support, modify as necessary.
#CONFIG += using_xvmc
#DEFINES += USING_XVMC
#EXTRA_LIBS += -lXvMCNVIDIA -lXvMC

# VIA cle266 support
#CONFIG += using_viahwslice
#DEFINES += USING_VIASLICE
#EXTRA_LIBS += -lddmpeg

# DirectFB support
CONFIG += using_directfb
EXTRA_LIBS += `directfb-config --libs`
QMAKE_CXXFLAGS += `directfb-config --cflags`

# Windows support
#CONFIG += win32
#DEFINES += _WIN32

# DirectX support
#CONFIG += using_directx
#DEFINES += USING_DIRECTX

DEFINES += QWS

any help would be great!

thanks,
thomas


More information about the mythtv-users mailing list