Falta OpenSSL durante ./configure. ¿Como arreglar?


79

Intenté instalar node.js y descubrí que faltaba el soporte de OpenSSL durante ./configure.

¿Cómo puedo arreglarlo? ¿Es un paso obligatorio? ¿La --without-sslopción solucionaría el problema?

# ./configure

Checking for gcc                         : ok
Checking for library dl                  : not found
Checking for openssl                     : not found
Checking for function SSL_library_init   : not found
Checking for header openssl/crypto.h     : not found
/home/ec2-user/node-v0.6.6/wscript:374: error: Could not autodetect OpenSSL 
                                               support.

Make sure OpenSSL development packages are installed. Use configure --without-ssl 
to disable this message.

Respuestas:


143

Sí, es un paso obligatorio. No puede eliminar OpenSSL de un programa que lo utiliza, de la misma manera que no puede eliminar partes aleatorias del motor de un automóvil.

La biblioteca OpenSSL generalmente ya está instalada, pero debe instalar los archivos de encabezado. Dependiendo de su distribución de Linux, necesitará estos paquetes:

  • Red Hat, Fedora, CentOS - openssl-devel
  • Debian, Ubuntu - libssl-dev
  • Arco - openssl

Técnicamente, uno podría reemplazar OpenSSL con, digamos, NSS, pero ese no es el punto aquí.


1
muchas gracias, instalé el encabezado de yum install openssl-devel
PK

Ah tiene sentido ahora. Esto es necesario para que wget a ./configure con ssl también.
dhaupin

3
Después de usar grawitys answer mientras intentaba configurar el calamar (3.5.26) con openssl, me topé con algunos efectos secundarios extraños: a menos que tenga "pkg-config" instalado, la biblioteca "openssl" y "libssl-dev" se tratan como si faltaba Así que tuve que instalar pkg-config también. Se utiliza en el script de configuración (alrededor de la línea 23362) para encontrar la ruta y la existencia de este paquete. En debian lo instala:>apt-get install pkg-config
Mihovil Bubnjar

8

debian:

apt-get install libssl-dev

apt-get install linux-headers-$(uname -r)

55
¿Cómo y por qué esto ayuda a solucionar el problema?
Kevin Panko

1
@KevinPankolibssl-dev

@KevinPanko esto funciona, puedo confirmarlo. La respuesta de Albert es correcta.
Jeff Atwood

1
@JeffAtwood No lo dudaba, pero ayuda cuando una respuesta explica por qué se necesita un comando.
Kevin Panko

esto no me resolvió, también configuré --with-ssl me dio que es un paquete obligatorio
Fabiotk

4

No lo es.

Todavía puede compilar nodejs con ./configure --without-ssl


2

Esto se muestra en Google para un problema que puede surgir con algunas instalaciones, posiblemente links-g. Tuve el problema en Archlinux con links-utf8 y links-g-directfb.

Presentación probable:

checking OPENSSL_CFLAGS... 
checking OPENSSL_LIBS... -lssl -lcrypto 
checking for OpenSSL... no
configure: error: OpenSSL not found

Prueba esto:

sed -i "/ac_cpp=/s/\$CPPFLAGS/\$CPPFLAGS -O2/" configure

El uso de este comando antes de su ./configurepaso debería solucionarlo.


2
¿Por qué ese parche está solucionando el problema?
user237419

2

Debe instalar openssl-develen su sistema operativo con:

yum install openssl-devel.x86_64

./configure --with-tls

make install


0

Si no tiene éxito solo con libssl-dev , a través de la distribución de Debian , puede incluir ambas versiones de la Biblioteca SSL al mismo tiempo

apt-get install libssl-dev libssl1.0
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.