web-dev-qa-db-ja.com

./configure中にOpenSSLが見つかりません。直し方?

Node.jsをインストールしようとしていましたが、./configureの間にOpenSSLのサポートが欠けていることがわかりました。

どうすれば修正できますか?それは必須のステップですか? --without-sslオプションで問題は解決しますか?

# ./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.
73
P K

はい、それは必須のステップです。 OpenSSLを使用しているプログラムからOpenSSLを削除することはできません。これは、自動車からランダムなエンジン部品を削除できないのと同じ方法です。

OpenSSLライブラリは通常すでにインストールされていますが、ヘッダファイルをインストールする必要があります。 Linuxディストリビューションに応じて、これらのパッケージが必要になります。

  • Red Hat、Fedora、CentOS - openssl-devel
  • Debian、Ubuntu - libssl-dev
  • アーチ - openssl

技術的にはOpenSSLを例えばNSSに置き換えることができますが、それはここでのポイントではありません。

135
grawity

debian:

apt-get install libssl-dev

apt-get install linux-headers-$(uname -r)
7
Albert E

いいえ、違います。

あなたはまだ./configure --without-sslでnodejsをコンパイルすることができます

4
grigoris

これは、いくつかのインストールで発生する可能性がある問題としてGoogleに表示されています - おそらくリンク-g。私はlinks-utf8とlinks-g-directfbでArchlinuxに問題がありました。

おそらくプレゼンテーション:

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

これを試して:

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

./configureステップの前にこのコマンドを使用すると修正されるはずです。

2
anon_ssl_angel

あなたのOSにopenssl-develをインストールする必要があります。

yum install openssl-devel.x86_64

./configure --with-tls

make install

1

libssl-devのみで成功しなかった場合、 Debian distroの上に両方のSSLライブラリバージョンを同時に含めることができます。

apt-get install libssl-dev libssl1.0
0
PYK