[mythtv] Compiling mythtv and running without installing.

John Drescher drescherjm at gmail.com
Sat Feb 25 15:49:31 UTC 2012


Hi all,
For the last few weeks I have run into a few bugs with my mythtv
0.24.2 frontend and backend. I have as a Qt developer decided that I
could most likely fix my problems myself (submitting bug reports with
patches) since I regularly fix these types of problems in the day job
(medical imaging research and development). Anyways for the last 3 to
4 years all of the applications I have developed were on the MS
Windows platform in Qt using CMake to generate Visual Studio
2005/2008/2010 32/64 bit projects. Although at times I have ported
parts of my projects to run on linux I have very little experience
with developing/debugging in linux or even with gcc so that will be
somewhat of a hurdle for me.

I have done the following so far:

1. Grabbed the latest git 0.24 fixes into my user folder
$HOME/temp/mythtv (may fork later on github)
2. configured it using the configure command
3. Imported the Makefile project into KDevelop-4.2.3 (I used KDevelop
in the past a little however I am not very familiar with it)
4. Built the project
5. Try to run mythfrontend from the shell possibly without installing
(since I do not want to mess with my production mythtv).

john at jmd0 ~/temp/mythtv/mythtv $
LD_LIBRARY_PATH="./libs/libmythlivemedia":"./libs/libmythhdhomerun/"
./programs/mythfrontend/mythfrontend
2012-02-25 09:50:12.150 mythfrontend version: fixes/0.24
[v0.24.2-15-gc29d36f-dirty] www.mythtv.org
2012-02-25 09:50:12.151 Using runtime prefix = /usr
2012-02-25 09:50:12.151 Using configuration directory = /home/john/.mythtv
2012-02-25 09:50:12.151 ThreadPool:HTTP: Initial 1, Max 25, Timeout 60000
2012-02-25 09:50:12.841 Empty LocalHostName.
2012-02-25 09:50:12.841 Using localhost value of jmd0.comcast.net
2012-02-25 09:50:12.841 Testing network connectivity to 'jmd0'
2012-02-25 09:50:12.956 New DB connection, total: 1
2012-02-25 09:50:12.958 Connected to database 'mythconverg' at host: jmd0
2012-02-25 09:50:12.960 Closing DB connection named 'DBManager0'
2012-02-25 09:50:12.961 Connected to database 'mythconverg' at host: jmd0
2012-02-25 09:50:12.961 Current locale EN_US
2012-02-25 09:50:12.961 Reading locale defaults from
/usr/share/mythtv//locales/en_us.xml
2012-02-25 09:50:13.143 DPMS is active.
2012-02-25 09:50:13.151 Desktop video mode: 1920x1080 59.934 Hz
2012-02-25 09:50:13.161 Enabled verbose msgs:  important general
2012-02-25 09:50:13.162 Loading en_us translation for module mythfrontend
2012-02-25 09:50:13.193 Using Frameless Window
2012-02-25 09:50:13.194 Using Full Screen Window
2012-02-25 09:50:13.349 Using the OpenGL painter
2012-02-25 09:50:13.430 OpenGL: OpenGL vendor  : NVIDIA Corporation
2012-02-25 09:50:13.430 OpenGL: OpenGL renderer: GeForce 9400 GT/PCIe/SSE2
2012-02-25 09:50:13.430 OpenGL: OpenGL version : 3.3.0 NVIDIA 295.20
2012-02-25 09:50:13.430 OpenGL: Max texture size: 8192 x 8192
2012-02-25 09:50:13.430 OpenGL: Max texture units: 4
2012-02-25 09:50:13.430 OpenGL: Direct rendering: Yes
2012-02-25 09:50:13.430 OpenGL: Initialised MythRenderOpenGL
2012-02-25 09:50:13.598 New DB connection, total: 2
2012-02-25 09:50:13.598 New DB connection, total: 3
2012-02-25 09:50:13.598 Connected to database 'mythconverg' at host: jmd0
2012-02-25 09:50:13.598 Current MythTV Schema Version (DBSchemaVer): 1264
2012-02-25 09:50:13.599 Connected to database 'mythconverg' at host: jmd0
2012-02-25 09:50:14.023 Registering Internal as a media playback plugin.
./programs/mythfrontend/mythfrontend: symbol lookup error:
./programs/mythfrontend/mythfrontend: undefined symbol:
_ZN9MSqlQuery9bindValueERK7QStringRK8QVariant6QFlagsIN4QSql13ParamTypeFlagEE


... time passes  ...

Ahhh. While composing this email I thought of running ldd. And I see
what the problem is.

john at jmd0 ~/temp/mythtv/mythtv $
LD_LIBRARY_PATH="./libs/libmythlivemedia":"./libs/libmythhdhomerun/"
ldd ./programs/mythfrontend/mythfrontend
        linux-vdso.so.1 =>  (0x00007fff337bf000)
        libmythtv-0.24.so.0 => /usr/lib64/libmythtv-0.24.so.0
(0x000000300f600000)
        libmythswscale.so.0 => /usr/lib64/libmythswscale.so.0
(0x000000300a200000)
        libmythavformat.so.52 => /usr/lib64/libmythavformat.so.52
(0x0000003007600000)
        libmythavcodec.so.52 => /usr/lib64/libmythavcodec.so.52
(0x0000003008e00000)
        libmythavcore.so.0 => /usr/lib64/libmythavcore.so.0 (0x000000300a600000)
        libmythavutil.so.50 => /usr/lib64/libmythavutil.so.50
(0x0000003007a00000)
        libmythupnp-0.24.so.0 => /usr/lib64/libmythupnp-0.24.so.0
(0x000000300c400000)
        libmythdb-0.24.so.0 => /usr/lib64/libmythdb-0.24.so.0
(0x000000300aa00000)
        libmythui-0.24.so.0 => /usr/lib64/libmythui-0.24.so.0
(0x000000300ba00000)
        libmyth-0.24.so.0 => /usr/lib64/libmyth-0.24.so.0 (0x000000300c800000)
        libmythlivemedia-0.24.so.0 =>
./libs/libmythlivemedia/libmythlivemedia-0.24.so.0
(0x00007fab0e008000)
        libmythfreemheg-0.24.so.0 =>
/usr/lib64/libmythfreemheg-0.24.so.0 (0x0000003010400000)
        libmythhdhomerun-0.24.so.0 =>
./libs/libmythhdhomerun/libmythhdhomerun-0.24.so.0
(0x00007fab0ddf4000)
        libXvMCW.so.1 => /usr/lib64/libXvMCW.so.1 (0x0000003334200000)
        libXvMC.so.1 => /usr/lib64/libXvMC.so.1 (0x0000003343600000)
        libXext.so.6 => /usr/lib64/libXext.so.6 (0x0000003303a00000)
        libXinerama.so.1 => /usr/lib64/libXinerama.so.1 (0x0000003333600000)
        libXxf86vm.so.1 => /usr/lib64/libXxf86vm.so.1 (0x000000332e800000)
        libXv.so.1 => /usr/lib64/libXv.so.1 (0x0000003338200000)
        libXrandr.so.2 => /usr/lib64/libXrandr.so.2 (0x0000003304600000)
        libX11.so.6 => /usr/lib64/libX11.so.6 (0x0000003302e00000)
        libmp3lame.so.0 => /usr/lib64/libmp3lame.so.0 (0x000000332ec00000)
        libasound.so.2 => /usr/lib64/libasound.so.2 (0x000000331e600000)
        libudev.so.0 => /lib64/libudev.so.0 (0x0000003313800000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00000032ffe00000)
        libfreetype.so.6 => /usr/lib64/libfreetype.so.6 (0x0000003ae6a00000)
        libz.so.1 => /lib64/libz.so.1 (0x0000003ae6600000)
        libbz2.so.1 => /lib64/libbz2.so.1 (0x0000003301a00000)
        libraw1394.so.11 => /usr/lib64/libraw1394.so.11 (0x0000003329200000)
        libiec61883.so.0 => /usr/lib64/libiec61883.so.0 (0x0000003332a00000)
        libavc1394.so.0 => /usr/lib64/libavc1394.so.0 (0x000000333ba00000)
        librom1394.so.0 => /usr/lib64/librom1394.so.0 (0x0000003337e00000)
        libGLU.so.1 => /usr/lib64/libGLU.so.1 (0x0000003135000000)
        libQtDBus.so.4 => /usr/lib64/qt4/libQtDBus.so.4 (0x0000003ae8400000)
        libGL.so.1 => /usr/lib64/libGL.so.1 (0x0000003130e00000)
        libQtWebKit.so.4 => /usr/lib64/qt4/libQtWebKit.so.4 (0x0000003001c00000)
        libQtSql.so.4 => /usr/lib64/qt4/libQtSql.so.4 (0x0000003aeda00000)
        libQtXml.so.4 => /usr/lib64/qt4/libQtXml.so.4 (0x0000003ae7c00000)
        libQtOpenGL.so.4 => /usr/lib64/qt4/libQtOpenGL.so.4 (0x0000003000e00000)
        libQtGui.so.4 => /usr/lib64/qt4/libQtGui.so.4 (0x0000003ffc000000)
        libQtNetwork.so.4 => /usr/lib64/qt4/libQtNetwork.so.4
(0x0000003ae8000000)
        libQtCore.so.4 => /usr/lib64/qt4/libQtCore.so.4 (0x0000003ae7600000)
        libgthread-2.0.so.0 => /usr/lib64/libgthread-2.0.so.0
(0x0000003301600000)
        librt.so.1 => /lib64/librt.so.1 (0x0000003300600000)
        libglib-2.0.so.0 => /usr/lib64/libglib-2.0.so.0 (0x0000003301200000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00000032ffa00000)
        libstdc++.so.6 =>
/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/libstdc++.so.6
(0x0000003183c00000)
        libm.so.6 => /lib64/libm.so.6 (0x00000032ff600000)
        libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x0000003183800000)
        libc.so.6 => /lib64/libc.so.6 (0x00000032ff200000)
        libvdpau.so.1 => /usr/lib64/libvdpau.so.1 (0x000000333d800000)
        libXrender.so.1 => /usr/lib64/libXrender.so.1 (0x0000003304200000)
        libxcb.so.1 => /usr/lib64/libxcb.so.1 (0x0000003302600000)
        /lib64/ld-linux-x86-64.so.2 (0x00000032fda00000)
        libdbus-1.so.3 => /usr/lib64/libdbus-1.so.3 (0x0000003305e00000)
        libnvidia-tls.so.295.20 =>
/usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.295.20
(0x0000003131200000)
        libnvidia-glcore.so.295.20 =>
/usr/lib64/libnvidia-glcore.so.295.20 (0x000000312ea00000)
        libsqlite3.so.0 => /usr/lib64/libsqlite3.so.0 (0x000000318c800000)
        libgstapp-0.10.so.0 => /usr/lib64/libgstapp-0.10.so.0
(0x0000003af4c00000)
        libgstinterfaces-0.10.so.0 =>
/usr/lib64/libgstinterfaces-0.10.so.0 (0x0000003af2e00000)
        libgstpbutils-0.10.so.0 => /usr/lib64/libgstpbutils-0.10.so.0
(0x0000003af3c00000)
        libgstvideo-0.10.so.0 => /usr/lib64/libgstvideo-0.10.so.0
(0x0000003af3800000)
        libgstbase-0.10.so.0 => /usr/lib64/libgstbase-0.10.so.0
(0x0000003af2a00000)
        libgstreamer-0.10.so.0 => /usr/lib64/libgstreamer-0.10.so.0
(0x0000003af0600000)
        libgobject-2.0.so.0 => /usr/lib64/libgobject-2.0.so.0
(0x0000003306200000)
        libpng15.so.15 => /usr/lib64/libpng15.so.15 (0x0000003ae6e00000)
        libSM.so.6 => /usr/lib64/libSM.so.6 (0x0000003ffbc00000)
        libICE.so.6 => /usr/lib64/libICE.so.6 (0x0000003306c00000)
        libfontconfig.so.1 => /usr/lib64/libfontconfig.so.1 (0x0000003ae7200000)
        libXau.so.6 => /usr/lib64/libXau.so.6 (0x0000003302a00000)
        libXdmcp.so.6 => /usr/lib64/libXdmcp.so.6 (0x0000003302200000)
        libicui18n.so.48 => /usr/lib64/libicui18n.so.48 (0x000000318a400000)
        libicuuc.so.48 => /usr/lib64/libicuuc.so.48 (0x0000003186000000)
        libgmodule-2.0.so.0 => /usr/lib64/libgmodule-2.0.so.0
(0x0000003307800000)
        libxml2.so.2 => /usr/lib64/libxml2.so.2 (0x0000003aea400000)
        libffi.so.5 => /usr/lib64/libffi.so.5 (0x0000003305a00000)
        libuuid.so.1 => /lib64/libuuid.so.1 (0x0000003ffb800000)
        libexpat.so.1 => /usr/lib64/libexpat.so.1 (0x0000003301e00000)
        libicudata.so.48 => /usr/lib64/libicudata.so.48 (0x00000032fde00000)
john at jmd0 ~/temp/mythtv/mythtv $

I believe I can easily fix that by extending my LD_LIBRARY_PATH to
include the other mythtv libraries..

I am going to still post this however.

-- 
John M. Drescher


More information about the mythtv-dev mailing list