2009-07-18 24 views
5

Sto tentando di installare Subversion con il supporto di Apache. Ho installato apr, apr-utils, neon e OpenSSL con la bandiera --enable-shared. Tuttavia, ottengo il seguente errore quando si tenta di installare subversion:riposizionamento R_X86_64_32 contro l'errore di un simbolo locale

/usr/bin/ld: /usr0/software/openssl/ossl/lib/libssl.a(s23_clnt.o): relocation R_X86_64_32 against `a local symbol' can not be used when making a shared object; recompile with -fPIC 
/usr0/software/openssl/ossl/lib/libssl.a: could not read symbols: Bad value 
collect2: ld returned 1 exit status 
make[1]: *** [libserf-0.la] Error 1 
make[1]: Leaving directory `/usr0/sources/svn/subversion-1.6.3/serf' 
make: *** [external-all] Error 1 

Sulla FAQ Subversion si afferma che se ottengo questo errore, devo usare la bandiera --enable-shared e dovrebbe funzionare. Tuttavia, questo non aiuta. Qualche idea su come aggirare questo?

+0

potrebbe essere una buona idea chiedere questo anche in serverfault.com (e aggiungere un collegamento tra loro) –

risposta

5

Ho capito che il problema era con l'installazione di openssl. Reinstallare openssl con enable-shared lavorato.

+1

appena incontrato anche questo /usr/bin/ld:/root/installa/lib/libssl .a (s23_clnt.o): il riposizionamento R_X86_64_32 contro 'un simbolo locale 'non può essere usato quando si crea un oggetto condiviso; ricompilare con -fPIC/root/installs/lib/libssl.a: impossibile leggere i simboli: Valore errato $ ./config condiviso questo risolto grazie! – rogerdpack

+0

Ho anche lo stesso problema, cosa intendi con "Reinstallare openssl con enable-shared lavorato"? puoi spiegare? Grazie! – RRR

+0

@RRR, durante la configurazione di openssl, eseguire: './config shared' – g4ur4v

0

Mi sono imbattuto in questo in un paio di altri scenari non aperti, e ho scoperto che questo è in genere correlato a non avere le librerie condivise attivate.

L'aggiunta di --enable-shared alla riga di configurazione sembra risolvere il problema.

0

Lo risolvo aggiungendo l'attributo nascosto a OPENSSL_ia32cap_P in crypto \ cryptolib.h e ricompilato.

extern unsigned int OPENSSL_ia32cap_P[] __attribute__ ((visibility ("hidden"))); 
Problemi correlati