Я пытаюсь установить Ruby 1.9.2 на CentOS 5.5. Я прохожу большую часть процесса make, но когда он пытается скомпилировать OpenSSL, я получаю ошибку. Ниже приведен вывод ошибки:
compiling openssl
make[1]: Entering directory `/sources/ruby-1.9.2-p136/ext/openssl'
gcc -I. -I../../.ext/include/x86_64-linux -I../.././include -I../.././ext/openssl -DRUBY_EXTCONF_H=\"extconf.h\" -fPIC -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wno-long-long -o ossl_x509.o -c ossl_x509.c
In file included from ossl.h:201,
from ossl_x509.c:11:
openssl_missing.h:71: error: conflicting types for ‘HMAC_CTX_copy’
/usr/include/openssl/hmac.h:102: error: previous declaration of ‘HMAC_CTX_copy’ was here
openssl_missing.h:95: error: conflicting types for ‘EVP_CIPHER_CTX_copy’
/usr/include/openssl/evp.h:459: error: previous declaration of ‘EVP_CIPHER_CTX_copy’ was here
make[1]: *** [ossl_x509.o] Error 1
make[1]: Leaving directory `/sources/ruby-1.9.2-p136/ext/openssl'
make: *** [mkmain.sh] Error 1
Любая помощь будет очень признательна! Я не мастер в Linux, но я смог успешно установить эту версию Ruby на нашем сервере. На нашем живом сервере используется более новая версия OpenSSL, и я предполагаю, что именно поэтому он ломается. Просто не уверен, что это можно исправить!
Я погуглил немного и нашел сообщение в блоге при Установке Ruby 1.9 на CentOS. Я только установил Ruby через источник на CentOS несколько раз, и это было более чем год назад, но я настоятельно рекомендовал бы выполнение всего, что Вы можете с диспетчером пакетов CentOS (конфетка) сначала - такая как установка openssl и openssl-devel с конфеткой, как это:
yum install openssl openssl-devel
Надежда это помогает, David