Aggiorna Subversion 1.4.3 a 1.5.2 su Debian (account ospitato)
-
06-07-2019 - |
Domanda
Sto cercando di aggiornare il mio server Subversion (l'ho ospitato con Dreamhost)
Questo è quello che corro:
- wget http://subversion.tigris.org/downloads/ subversion-1.5.2.tar.bz2
- wget http://subversion.tigris.org/ download / subversion-deps-1.5.2.tar.bz2
- tar -xjf subversion-1.5.2.tar.bz2
- tar -xjf subversion-deps-1.5.2.tar.bz2
- cd subversion-1.5.2
- ./configure --prefix = / usr / bin --with-libs = / usr / bin / openssl --with-ssl
Ma non posso continuare oltre a causa di questo errore:
- verifica del nome del file di output predefinito del compilatore C ...
- configura: errore: il compilatore C non può creare file eseguibili
- Vedi ` config.log 'per maggiori dettagli.
- configurazione non riuscita per neon
Dato che non sono un esperto di Linux, non sono sicuro di come procedere.
Quindi la domanda è: qual è il modo migliore per aggiornare (dati i vincoli di essere con questo provider ospitato).
Aggiornamento:
I contenuti di config.log possono essere visualizzati qui (non conosco il modo migliore per mostrare i file qui su SO)
Aggiornamento:
Sembra che stia guardando il file config.log sbagliato.
Probabilmente avrei dovuto guardare sovversione. 1.5.2 / neon / config.log
Soluzione
Se stai usando openssl con SVN, devi configurare SVN con
./configure .... --with-openssl=/path/to/openssl
Quando l'ho fatto in passato ho avuto problemi a creare altri binari che usano questa libreria se non specifico il flag -fPIC
. Quindi è meglio eseguire make con quel parametro (se hai quel problema). Potresti anche dover fare il punto make sul tuo binario build .. quindi la tua chiamata make sarà simile a questa:
make CC="gcc -fPIC" LDFLAGS="/path/to/openssl/lib"
Non dimenticare di compilare openssl anche con CC = " gcc -fPIC "
!
Buona fortuna!
Altri suggerimenti
Dovrai creare la tua copia con il tuo account.
mkdir ~/src
cd ~/src
wget http://subversion.tigris.org/downloads/subversion-1.5.2.tar.bz2
wget http://subversion.tigris.org/downloads/subversion-deps-1.5.2.tar.bz2
tar -xjf subversion-1.5.2.tar.bz2
tar -xjf subversion-deps-1.5.2.tar.bz2
cd subversion-1.5.2
./configure --prefix=/home/$USER --with-ssl
make
make install
Dovrai anche modificare il tuo percorso affinché funzioni, se non l'hai già fatto.
Quando si utilizza
./configure --prefix=/usr/bin --with-libs=/usr/bin/openssl --with-ssl
allora puoi vedere in neon / config.log che cerca gli include in / usr / bin / openssl / include ... mentre questo è ovviamente solo un binario. Quindi, salta questo " - con-libs " e assicurati che il pacchetto di sviluppo ssl sia installato usando
apt-get install libssl-dev
Questa potrebbe essere una misura di sicurezza, se il sistema viene compromesso teoricamente sarà più difficile per l'utente malintenzionato creare più codice di attacco sul sistema per ottenere più accesso.
La soluzione a questo è di compilare in modo incrociato il codice su un computer locale, quindi trasferirlo sul server. Se non riesci ad installare sul sistema come suggerisce Aupajo, metti l'eseguibile nella tua directory $ HOME / bin. Tieni presente però che ciò probabilmente significa che non avrai i permessi per eseguire il server svn, solo l'applicazione client.
Anche io ero bloccato con questo errore:
configure: error: C compiler cannot create executables
Nel mio caso ho scoperto che avevo un'installazione pulita di Debian Etch, senza un compilatore C. L'avevo installato (a torto, suppongo) tramite apt-get install gcc
. Alcune ricerche su Google mi hanno portato a installare g ++ invece tramite
apt-get install g++
Successivamente ha funzionato. Non sono sicuro che questo ti aiuti, ma mi ha aiutato.