TagLib Installation =================== TagLib uses the CMake build system. As a user, you will most likely want to build TagLib in release mode and install it into a system-wide location. This can be done using the following commands: cmake -DCMAKE_INSTALL_PREFIX=/usr/local -DCMAKE_RELEASE_TYPE=Release . make sudo make install In order to build the included examples, use the BUILD_EXAMPLES option: cmake -DBUILD_EXAMPLES=ON [...] See http://www.cmake.org/cmake/help/runningcmake.html for generic help on running CMake. Mac OS X Framework ------------------ On Mac OS X, you might want to build a framework that can be easily integrated into your application. If you set the BUILD_FRAMEWORK option on, it will compile TagLib as a framework. For example, the following command can be used to build an Universal Binary framework with Mac OS X 10.4 as the deployment target: cmake -DCMAKE_BUILD_TYPE=Release \ -DBUILD_FRAMEWORK=ON \ -DCMAKE_C_COMPILER=/usr/bin/gcc-4.0 \ -DCMAKE_CXX_COMPILER=/usr/bin/c++-4.0 \ -DCMAKE_OSX_SYSROOT=/Developer/SDKs/MacOSX10.4u.sdk/ \ -DCMAKE_OSX_DEPLOYMENT_TARGET=10.4 \ -DCMAKE_OSX_ARCHITECTURES="ppc;i386;x86_64" For a 10.6 Snow Leopard static library, use: cmake -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_OSX_DEPLOYMENT_TARGET=10.6 \ -DCMAKE_OSX_ARCHITECTURES="i386;x86_64" \ -DENABLE_STATIC=ON \ -DCMAKE_INSTALL_PREFIX="" After 'make', and 'make install', add libtag.a to your XCode project, and add the include folder to the project's User Header Search Paths. For Windows with Visual Studio 2010, cd to the taglib folder then: md build cd build cmake -DENABLE_STATIC=ON -DENABLE_STATIC_RUNTIME=ON -G "Visual Studio 10" .. Including ENABLE_STATIC_RUNTIME=ON indicates you want taglib built using the static runtime library, rather than the DLL form of the runtime. cmake will create a Visual Studio solution, taglib.sln that you can open and build as normal. Unit Tests ---------- If you want to run the test suite to make sure TagLib works properly on your system, you need to have cppunit installed. The test suite has a custom target in the build system, so you can run the tests using make: make check