[mythtv] Debug build for Mac OS X

Stuart Auchterlonie stuarta at squashedfrog.net
Thu Feb 10 21:40:26 UTC 2011


On 09/02/11 06:57, Nigel Pearson wrote:
>
> On 08/02/2011, at 2:25 AM, John Sturgeon wrote:
>
>> ...
>> Undefined symbols:
>>   "_mysql_close", referenced from:
>>       _main in main.o
>>       kickDatabase(bool) in zmserver.o
>>   "_mysql_select_db", referenced from:
>>       connectToDatabase()     in zmserver.o
>>   "_mysql_fetch_row", referenced from:
>>       ZMServer::getZMSetting(std::basic_string<char, std::char_traits<char>, std::allocator<char>  >  const&)in zmserver.o
>
>
> 1) I get the same error in a debug build.
>
> Going into that directory and doing purge&  make works,
> so it is something strange, environmentally. e.g.:
>
> cd src/mythplugins/mythzoneminder/mythzoneminder/*.o
> make
>
> gave me a successful, debug, libmythzoneminder.dylib.
>
> I blame ccache.
>
>

I wouldn't blame ccache. Lets look at the difference between
the compiler output for a normal build vs debug....

==== normal build ====
ccache g++ -headerpad_max_install_names -Wl,-search_paths_first -arch 
i386 -o mythzmserver main.o zmserver.o     -L/usr/lib 
-L/Users/stuartauchterlonie/Projects/build/MythTV/trunk/build/.osx-packager/build/lib 
-lQtSql -F/System/Library/Frameworks 
-L/Users/stuartauchterlonie/Projects/build/MythTV/trunk/build/.osx-packager/build/lib/mysql 
-lmysqlclient_r -lz -lm -lQtGui -lQtCore


==== debug build ====
ccache g++ -headerpad_max_install_names -Wl,-search_paths_first -arch 
i386 -o mythzmserver main.o zmserver.o     -L/usr/lib -L/Users/stuarta
uchterlonie/Projects/build/MythTV/trunk/build/.osx-packager/build/lib 
-lQtSql_debug -lQtGui_debug -lQtCore_debug

==== end outputs ====

So our normal build links against the mysqlclient_r library.
and the debug build is missing mysqlclient_r, libz and libm.

I'd say that's why the debug build isn't linking...


Regards
Stuart Auchterlonie


More information about the mythtv-dev mailing list