2016-04-19 5 views
3

Ich versuche RabbitMQ (3.6.1) auf Linux-Rechner Red Hat Enterprise Linux Server Version 6.6 zu installieren. Um RabbitMQ zu installieren, zuerst habe ich installiert Erlang R16B03 Version von der Quelle (otp_src_R16B03) und unten gefolgt BefehleErlang Installation und "/usr/local/ssl/lib/libcrypto.a: konnte Symbole nicht lesen: Schlechter Wert"

wget http://www.erlang.org/download/otp_src_R16B03.tar.gz 
tar xvfz /usr/tmp/otp_src_R16B03.tar 
cd otp_src_R16B03 
LANG=C; export LANG 
./configure --with-ssl=/usr/bin 

ich die Meldung unten erhalten:

********************************************************************* 
********************** APPLICATIONS DISABLED ********************** 
********************************************************************* 

crypto   : OpenSSL is configured for kerberos but no krb5.h found 
jinterface  : No Java compiler found 
odbc   : ODBC library - link check failed 
orber   : No C++ compiler found 
ssh   : OpenSSL is configured for kerberos but no krb5.h found 
ssl   : OpenSSL is configured for kerberos but no krb5.h found 

********************************************************************* 
********************************************************************* 
********************** APPLICATIONS INFORMATION ******************* 
********************************************************************* 

wx    : wxWidgets not found, wx will NOT be usable 
********************************************************************* 

obwohl ich mit Make fortgesetzt & installieren machen, aber während RabbitMQ Server starten bekomme ich folgende Fehler

sbin/rabbitmq-server 

Erste Nachricht

Nach der Erkundung mehrerer Lösung habe ich verstanden, dass ich die neueste Openssl installieren und den Pfad der neu installierten OpenSSL bereitstellen muss.

Ich installierte Openssl von der Quelle und installiert mit -fPIC

wget https://www.openssl.org/source/openssl-1.0.2.tar.gz 
tar xvfz /usr/tmp/openssl-1.0.2.tar.gz 
cd /usr/tmp/openssl-1.0.2 
./config -fPIC 
make 
make install 

Jetzt neuer OpenSSL in bin/local/ssl Ort installiert und ich habe den Erlang mit unter Konfiguration

export PATH="/usr/local/ssl/bin:$PATH” 
export CFLAGS=-fPIC 
cd /usr/tmp/otp_src_RB1603 
LANG=C; export LANG 
./configure --with-ssl=/usr/local/bin 
make 
make install 

neu installiert Jetzt bekomme ich den Fehler

/usr/bin/ld: /usr/local/ssl/lib/libcrypto.a(rsaz_exp.o): relocation R_X86_64_32 against `.rodata' can not be used when making a shared object; recompile with -fPIC 
/usr/local/ssl/lib/libcrypto.a: could not read symbols: Bad value** 
collect2: ld returned 1 exit status 
make[6]: *** [../priv/lib/x86_64-unknown-linux-gnu/crypto.so] Error 1 
make[6]: Leaving directory `/var/tmp/otp_src_R16B03/lib/crypto/c_src' 
make[5]: *** [release_spec] Error 2 
make[5]: Leaving directory `/var/tmp/otp_src_R16B03/lib/crypto/c_src' 
make[4]: *** [release] Error 2 
make[4]: Leaving directory `/var/tmp/otp_src_R16B03/lib/crypto/c_src' 
make[3]: *** [release] Error 2 
make[3]: Leaving directory `/var/tmp/otp_src_R16B03/lib/crypto/c_src' 
make[2]: *** [release] Error 2 
make[2]: Leaving directory `/var/tmp/otp_src_R16B03/lib/crypto' 
make[1]: *** [release] Error 2 
make[1]: Leaving directory `/var/tmp/otp_src_R16B03/lib' 
make: *** [install.libs] Error 2 

Ich konnte diesen Fehler nicht beheben oder jeder Vorschlag .. Bitte beachten Sie, ich Zugriff Maschine verwenden als Benutzer root

+0

Könnten Sie nicht einfach das rpm-Paket von rmq Website installieren? – cantSleepNow

+0

danke, es hat funktioniert .. Ich installiere Erlang rpm Datei und rabbitmq.rpm Datei –

+0

Sie sind herzlich willkommen! Ich werde das als Antwort geben. – cantSleepNow

Antwort

0
/usr/bin/ld: /usr/local/ssl/lib/libcrypto.a(rsaz_exp.o): relocation R_X86_64_32 against `.rodata' 
can not be used when making a shared object; recompile with -fPIC 
/usr/local/ssl/lib/libcrypto.a: could not read symbols: Bad value** 
collect2: ld returned 1 exit status 

Sie müssen OpenSSL mit der shared Option bauen. Vielleicht etwas wie das Folgende für eine 64-Bit-Intel-Maschine.

wget https://www.openssl.org/source/openssl-1.1.0b.tar.gz 
tar xzf openssl-1.1.0b.tar.gz 
cd openssl-1.1.0b 

./Configure no-ssl2 no-ssl3 shared enable-ec_nistp_64_gcc_128 
... 
make -j 8 
... 
make test 
... 
suod make install 

enable-ec_nistp_64_gcc_128 machen EC Diffie-Hellman 2x 4x schneller, aber es hat einige Einschränkungen. Sie können es auf einem 64-Bit-Intel-Computer verwenden. Siehe auch Compilation and Installation | Configure Options im OpenSSL-Wiki.


Auch sicher sein, entweder make dclean für OpenSSL 1.0.2 und unten; oder make distclean für OpenSSL 1.1.0 und höher. Anderenfalls verweilt ein Teil der alten Konfiguration auch nach dem Ändern der Option.