109 votes

OpenSSL manquant pendant ./configure. Comment résoudre ce problème ?

J'essayais d'installer node.js et j'ai constaté que le support d'OpenSSL manquait pendant ./configure .

Comment puis-je le réparer ? S'agit-il d'une étape obligatoire ? Est-ce que la --without-ssl option régler le problème ?

# ./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.

0 votes

Pour moi dans ma Debian 9 (ubuntu) : apt update && apt install -y openssl && apt install -y libc6 && apt install -y libssl1.1 && apt install -y ca-certificates et ensuite ./configure

188voto

James Mertz Points 390

Oui, c'est une étape obligatoire. Vous ne pouvez pas supprimer OpenSSL d'un programme qui l'utilise, de la même manière que vous ne pourriez pas retirer des pièces de moteur aléatoires d'une voiture.

La bibliothèque OpenSSL est généralement déjà installée, mais vous devez installer les fichiers d'en-tête. En fonction de votre distribution Linux, vous aurez besoin de ces paquets :

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

Techniquement, on pourrait <em>remplacer </em>OpenSSL avec, disons, NSS, mais ce n'est pas le sujet ici.

2 votes

Merci beaucoup, j'ai installé l'en-tête par yum install openssl-devel

0 votes

Ah, ça a du sens maintenant. C'est nécessaire pour que wget puisse accéder à ./configure avec ssl également.

4 votes

Après avoir utilisé réponse de Grawitys En essayant de configurer squid (3.5.26) avec openssl, je suis tombé sur un effet secondaire bizarre : Si vous n'avez pas installé "pkg-config", les bibliothèques "openssl" et "libssl-dev" sont traitées comme si elles étaient manquantes. J'ai donc dû installer pkg-config également. Il est utilisé dans le script de configure (autour de la ligne 23362) pour trouver le chemin et l'existence de ce paquetage. Sur debian, il est installé par : > apt-get install pkg-config

11voto

Albert E Points 111

Debian :

apt-get install libssl-dev

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

7 votes

Comment et pourquoi cela permet-il de résoudre le problème ?

1 votes

@KevinPanko libssl-dev

0 votes

@KevinPanko cela fonctionne je peux le confirmer. La réponse d'Albert est correcte.

5voto

grigoris Points 51

Non, ça ne l'est pas.

Vous pouvez toujours compiler nodejs avec ./configure --without-ssl

2voto

Corey Points 39

Cela apparaît sur Google comme un problème qui peut survenir avec certaines installations - peut-être des liens-g. J'ai eu le problème sur Archlinux avec links-utf8 et links-g-directfb.

Présentation probable :

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

Essayez ça :

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

En utilisant cette commande avant votre ./configure devrait régler le problème.

2 votes

Pourquoi ce patch résout-il le problème ?

2voto

Vous devez installer openssl-devel dans votre système d'exploitation avec :

yum install openssl-devel.x86_64

./configure --with-tls

make install

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X