2016-09-12 23 views
1

私は、CMakeとMinGWを使用してWindows 10にlibwebsocketsをビルドしようとしています。ライブラリにはOpenSSLが必要です。CMakeが見つからないためにlibwebsocketsライブラリをビルドできませんOpenSSL

環境変数: OPENSSL_CONF = C:\プログラムファイル(x86の)\ OpenSSLの-Win32の\ binに\ openssl.cfg OPENSSL_ROOT_DIR = C:\プログラムファイル(x86の)\ OpenSSLの-Win32の

私は構築するためにこれを使用して: cmake -G "MinGW Makefiles" -DCMAKE_INSTALL_PREFIX=D:/MinGW -DOPENSSL_LIBRARIES="C:\Program Files (x86)\OpenSSL-Win32\lib" -DOPENSSL_CONF="C:\Program Files (x86)\OpenSSL-Win32\openssl.cfg" -DOPENSSL_INCLUDE_DIR="C:\Program Files (x86)\OpenSSL-Win32\include" ..\

私が手にエラーがある:

Could NOT find OpenSSL, try to set the path to OpenSSL root folder in the system variable OPENSSL_ROOT_DIR (missing: OPENSSL_LIBRARIES) (found version "1.1.0")

私はからのOpenSSLバイナリをダウンロードと64と32の両方のバージョンを使用しています。私も変数を確認するために、CMakeのファイルを変更した

が渡されていた。

+1

コマンドプロンプトを開き、 'echo%OPENSSL_ROOT_DIR%'、出力は何ですか? – SimpleGuy

+0

変数 'OPENSSL_ROOT_DIR'は** root **フォルダを指し、* bin *フォルダを指してはいけません。スクリプト[findOpenSSL.cmake](https://github.com/Kitware/CMake/blob/master/Modules/FindOpenSSL.cmake)がそのような設定を無視するので、コマンドラインから(またはCMakeキャッシュ内で)変数 'OPENSSL_LIBRARIES'を設定することは無意味です。 – Tsyvarev

+0

自分の環境変数を更新しました。 echo%OPENSSL_ROOT_DIR%はD:\ libs \ OpenSSL-Win64を出力します。私はまだ環境変数が設定されたエラーを取得します。 – Shroder

答えて

0

これは私が使っていたにCMakeのバージョンとの問題でした。私はCMake 3.3.xから3.6.2にアップグレードし、ビルドが成功しました。

+0

私は最新のバージョン3.6.2を使用していますが、まだこのエラーが発生しています。 – Jnr

+0

@Jnr libwebsocketsもビルドしていますか?あなたがまだ持っていない場合は、質問欄のコメントの下に記載されている手順を試してください。あなたのOpenSSLバイナリはどこにありますか?echo%OPENSSL_ROOT_DIR%は何も出力しませんか? – Shroder

+0

はい、私はそれらのコメントを読んだ。私の質問はこちらhttp://stackoverflow.com/questions/39696840/cmake-error-could-not-find-openssl?noredirect=1#comment66694544_39696840おそらくあなたはそれに答えることができます。 – Jnr

関連する問題