Mais plano de fundo: Eu estava tentando instalar o SQLite3 porque quando eu executei um comando SVN, recebi um erro:
E200029: Couldn't perform atomic initialization
E200030: SQLite compiled for 3.7.15.2, but running with 3.6.23
Eu assumi que consertar minha instalação do SQLite iria consertar isso. No entanto, penso que a questão principal é que o Ubuntu 13.04 requer SQLite 3.6.23, e essa é a razão pela qual a execução
apt-get purge libsqlite3-0
apaga a maior parte do Ubuntu (veja esta resposta relacionada para mais detalhes).
Depois de bater cabeça, gritar e chorar, eu decidi tentar instalar o SVN da fonte (ao contrário do SQLite, que é o que eu disse que fiz na minha pergunta). Isso foi relativamente simples, apesar de um pouco demorado.
Basicamente:
wget http://mirror.ox.ac.uk/sites/rsync.apache.org/subversion/subversion-1.8.1.tar.bz2
tar xjvf subversion-1.8.1.tar.bz2
Eu descobri que precisava das bibliotecas APR e APRs, então:
wget http://mirror.ox.ac.uk/sites/rsync.apache.org/apr/apr-1.4.8.tar.bz2
wget http://mirror.ox.ac.uk/sites/rsync.apache.org/apr/apr-util-1.5.2.tar.bz2
tar xjvf apr-1.4.8.tar.bz2
cd apr-1.4.8
./configure
make
sudo make install
cd ..
tar xjvf apr-util-1.5.2.tar.bz2
cd apr-util-1.5.2
./configure --with-apr=/usr/local/apr
make
sudo make install
... e a biblioteca servo (eu não compilei com isto a primeira vez, mas isso fornece suporte a http - sem isso o SVN pode lidar apenas com os protocolos file
e svn
):
wget https://serf.googlecode.com/files/serf-1.3.0.tar.bz2
tar xjvf serf-1.3.0.tar.bz2
scons APR=/usr/local/apr APU=/usr/local/apr
sudo scons install
scons -c
Estes são os mesmos comandos do serfe README (se scons isn ' t instalado está disponível via apt-get
).
O SVN também quer o arquivo .c de compilação SQLite, então faça o download da amalagação e descompacte-o por enquanto - criei uma ~/sqlite-amalgamation
pasta e deixou tudo aqui. Você deve então estar pronto para compilar o svn. O servo deve ter instalado em um local padrão, portanto, não precisa de um local especificado
sudo ./configure --with-sqlite=/home/chris/sqlite-amalgamation/sqlite3.c --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr --with-serf
make
sudo make install
e espero que seja isso. Eu tive um erro SVN de
The working copy needs to be upgraded
mas quando tentei o svn upgrade
, recebi um erro na base de dados do SVN ... a única forma de o fazer era verificar uma nova versão numa nova localização. Mas o SVN agora funciona!
Ele não corrige o problema SQLite3 subjacente, e eu ainda recebo o mesmo erro de incompatibilidade de versão de cabeçalho / fonte ao fazer $ sqlite3
, mas como não preciso usar o SQLite autônomo no momento, esse problema pode esperar até outro dia (ou, é de fato algo que deveria ser registrado como um bug no Ubuntu?)