[mythtv] OSX backend: now what?

David Abrahams dave at boost-consulting.com
Wed Dec 14 21:01:16 EST 2005

David Abrahams <dave at boost-consulting.com> writes:

> Nigel Pearson <nigel at ind.tansu.com.au> writes:
>>> I ended up with a mythtvbackend.app, which I suppose needs to be
>>> assembled into a "Framework" the way the front end is?
>> 	I will look at adding that to the script.
>> (but then there are all the other programs, too)
>> 	An easy test hack is to just symlink the relevant
>> libraries into the current directory:
>> cd .osx-packager/src/myth-svn/mythtv/programs/mythbackend
>> ln -s ../../../../../build/lib/*
>> ln -s ../../libs/lib*/*.dylib .
>> mythbackend.app/Contents/MacOS/mythbeckend
> That's good to know.  I'm not sure if that's going to cure the problem
> that's apparently revealed by install_name_tool:
>   [osx-pkg] Writing Info.plist for myth framework
>   [osx-pkg] Processing shared library dependencies for /Users/dave/myth/MythBackend.app/Contents/Frameworks/myth.framework/Versions/A/myth
>   [osx-pkg] Parsing /Users/dave/myth/MythBackend.app/Contents/Frameworks/myth.framework/Versions/A/myth
>   [osx-pkg] Could not parse library file name /Users/dave/myth/MythBackend.app/Contents/Frameworks/myth.framework/Versions/A/myth
>   [osx-pkg] Parsing myth
>   [osx-pkg] Could not parse library file name myth
>   [osx-pkg] /usr/bin/install_name_tool -change myth @executable_path/../Frameworks/myth.framework/myth /Users/dave/myth/MythBackend.app/Contents/Frameworks/myth.framework/Versions/A/myth
>   [osx-pkg] Parsing libqt-mt.3.dylib
>   [osx-pkg] /usr/bin/install_name_tool -change libqt-mt.3.dylib @executable_path/../Frameworks/qt-mt.framework/qt-mt /Users/dave/myth/MythBackend.app/Contents/Frameworks/myth.framework/Versions/A/myth
>   [osx-pkg] Could not find @executable_path/../Frameworks/qt-mt.framework/qt-mt
>   Died at ./osx-packager.pl line 1031.
> I'm not sure if that's deep, or ignorable.

FWIW, I got past this by commenting out the line that calls
MakePackage for MythFrontend, on the hunch that somehow the libraries
needed by the backend were getting "renamed out of the way."  It's
probably misguided, of course; I'm just grabbing at straws.

The resulting backend executable launches and then apparently just
exits.  On the other hand, maybe I really need to run it from within a
terminal to see what it's doing.

That told me, at least, that the previously mentioned problem was

  $ mythbackend.app/Contents/MacOS/mythbackend 
  dyld: Library not loaded: libqt-mt.3.dylib
    Referenced from: /Users/dave/myth/.osx-packager/src/myth-svn/mythtv/programs/mythbackend/mythbackend.app/Contents/MacOS/mythbackend
    Reason: image not found
  Trace/BPT trap

Okay, so I hunted down libqt-mt.3.dylib and tried again:

  $ ln -s ../../../../../src/qt-mac-free-3.3.4/lib/*.dylib .
  $ mythbackend.app/Contents/MacOS/mythbackend 
  2005-12-14 20:58:06.390 Using runtime prefix = /Users/dave/myth/.osx-packager/build
  2005-12-14 20:58:06.571 New DB connection, total: 1
  2005-12-14 20:58:06.614 Unable to connect to database!
  2005-12-14 20:58:06.614 Driver error was [1/2002]:
  QMYSQL3: Unable to connect
  Database error was:
  Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

  2005-12-14 20:58:06.642 Failed to init MythContext, exiting.

Better.  I wonder why the build procedure isn't finding libqt?
Next I'll install MySQL and see if I can get any further.

Dave Abrahams
Boost Consulting

More information about the mythtv-dev mailing list