To build a Murmur server on CentOS 5, we need:
Compiler
Remove "gcc-c++" if you have this package installed.
Install gcc44-c++, and do "ln -s /usr/bin/g++44 /usr/bin/g++". Otherwise the mumble compile will complain about not finding g++.
sqlite
The default version for sqlite on CentOS 5 is 3.3.6, which will not satisfy the newer version of qt. I downloaded 3.5.9 src package from fedora, and compiled myself.
qt-devel 4.3 and up, and qt-sqlite
Download the src.rpm from http://packages.atrpms.net/dist/el5/qt4/
In $HOME/.rpmmacros, add a line "%rhel 1" so that the phonon package will build.
After that is built, we need to install
qt47
qt47-devel
qt47-x11
Please make sure that /usr/lib/qt47/plugins/sqldrivers/libqsqlite.so exists from qt47 rpm.
I tried qt44 but it didn't work. qt47 is the one that worked with murmur.
protobuf-static
The package "protobuf" seems to statically link to libstdc++, which causes compatibilty problem. The libstdc++ that it statically link to may be /usr/lib/gcc/i386-redhat-linux6E/4.4.4/libstdc++.a. The easiear way to solve this is to install the rpm protobuf-static, and then modify the src/murmble.pri for static linking to libprotobuf.a.
I found the files that contain this symbol using the follow script:
% find /usr/lib -name 'lib*' -type f | while read f ; do
> s=`strings $f | grep _ZNSt3tr18__detail12__prime_listE`
> [[ "$s" ]] && echo $f
> done
Reference: