Subversion compileren op Mac OS XIn de serie hoe compileer ik mijn eigen software omdat anderen het niet voor me doen, deze keer Subversion op Mac OS X. Merk op dat OS X 10.6 (Snow Leopard) een redelijk nieuwe versie standaard meegeleverd heeft, dus onderstaande is wellicht alleen nuttig als je niet Snow Leopard hebt. Voorheen haalde ik gewoon een install DMG van Collabnet, maar die hebben besloten geen 10.4 binaries meer te maken, en de Python bindings zijn niet voor Python 2.6. Zodoende zelf compileren.
Eigenlijk is het redelijk eenvoudig. Zorg dat je van te voren recente versie van de volgende libraries hebt:
Met de volgende environment variabelen kun je tweaken dat GCC 4.2 gebruikt wordt in plaats van de standaard GCC 4.0:
export CC=/usr/bin/gcc-4.2 export CPP=/usr/bin/cpp-4.2 export CXX=/usr/bin/g++-4.2
Het standaard riedeltje om de libraries te compileren:
tar xzf bla.tgz cd bla ./configure make sudo make install
Hieronder volgen specifieke instructies voor de juiste instellingen voor de bovenstaande libraries.
—SQLite: Gebruik de amalgamation tarball.
./configure --enable-threadsafe --enable-readline
Swig: Alleen nodig als je language bindings wilt gebruiken. Swig moet opnieuw gecompiled worden want de standaard swig gebruikt de system python. Zorg dat de juiste Python versie op je path staat zodat swig die kan detecteren.
Neon:
./configure --with-ssl --enable-shared --enable-static
APR: Standaard installeert dit in een subdirectory 'apr' vandaar de prefix override:
./configure --prefix=/usr/local
APR-util: Standaard installeert dit in een subdirectory 'apr' vandaar de prefix override:
./configure --prefix=/usr/local --with-apr=/usr/local
Subversion: Je moet hem even vertellen waar sqlite staat, standaard heeft hij namelijk een voorkeur voor de systeemversie uit /usr/bin.
./configure --with-sqlite=/usr/local LDFLAGS=-L/usr/local/lib
Hij is slim genoeg om te zien dat de Python bindings met gcc-4.0 gecompileerd moeten worden dus je kunt die gcc-4.2 environment settings gewoon actief laten. Als je language bindings wilt dan moet je ook nog dit doen:
make swig-py sudo make install-swig-py make check-swig-py• Wrote irmen at 00:21 (edited 2×, last on 14 May 2010) | read 78× | Add comment