2017-04-14 22 views
3

私はboost asioを使用するC++プロジェクトに取り組んでいます。アジアを使用するライブラリを構築しようとすると、私は解決策here & hereで探し、次のエラー'openssl/conf.h'ファイルが見つかりませんMacOS Sierraでエラーが発生しました

/usr/local/include/boost/asio/ssl/detail/openssl_types.hpp:19:10: fatal error: 'openssl/conf.h' file not found 
#include <openssl/conf.h> 

を取得しています、私は

brew install openssl 
brew link openssl --force 
xcode-select --install 

を試みたが、助けにはなりませんでした。次の操作を行って

も、私が使用しています

export C_INCLUDE_PATH=/usr/local/include 
export CPLUS_INCLUDE_PATH=/usr/local/include 

ブーストのバージョンがboost_1_63_0で動作するようには思えません。私はMacOS Sierraにあり、Xcode 8.3.1です。私は他のリンクから理解したようHomebrew

brew install boost 

を使用してブーストをインストールしている、XcodeはSSLヘッダーの間違った場所を見ています。 しかし、どうすれば解決できますか?

私は/usr/local/include & /opt/local/includeを調べました。 'openssl/ssl.h'はどちらの場所にも存在しません。しかしbrew install opensslを行うとbrew install openssl --force

Warning: openssl-1.0.2k already installed, it's just not linked. 

ても問題が解決しないもbrew link openssl --forceを行うと言い行う次

Warning: openssl is a keg-only and another version is linked to opt. 
Use `brew install --force` if you want to install this version 

言います。

ドイグwhich opensslは、次の値を返します。

/usr/local/bin/openssl 

答えて

4
リンク

かを提案してください、インストールされているすべての自作パッケージが/usr/local/optにリンクを介して到達可能です。さらに、Homebrew経由でopensslをインストールすると、Homebrewはopensslライブラリとヘッダの使い方を教えてくれます。

~ [email protected] 15s 
❯ brew install openssl 
==> Downloading https://homebrew.bintray.com/bottles/openssl-1.0.2k.el_capitan.bottle.tar.gz 
Already downloaded: /Users/nega/Library/Caches/Homebrew/openssl-1.0.2k.el_capitan.bottle.tar.gz 
==> Pouring openssl-1.0.2k.el_capitan.bottle.tar.gz 
==> Using the sandbox 
==> Caveats 
A CA file has been bootstrapped using certificates from the SystemRoots 
keychain. To add additional certificates (e.g. the certificates added in 
the System keychain), place .pem files in 
    /usr/local/etc/openssl/certs 

and run 
    /usr/local/opt/openssl/bin/c_rehash 

This formula is keg-only, which means it was not symlinked into /usr/local. 

Apple has deprecated use of OpenSSL in favor of its own TLS and crypto libraries 

If you need to have this software first in your PATH run: 
    echo 'export PATH="/usr/local/opt/openssl/bin:$PATH"' >> ~/.zshrc 

For compilers to find this software you may need to set: 
    LDFLAGS: -L/usr/local/opt/openssl/lib 
    CPPFLAGS: -I/usr/local/opt/openssl/include 
For pkg-config to find this software you may need to set: 
    PKG_CONFIG_PATH: /usr/local/opt/openssl/lib/pkgconfig 

==> Summary 
    /usr/local/Cellar/openssl/1.0.2k: 1,696 files, 12MB 

~ [email protected] 11s 
❯ 

brew linkは何も必要ありません。 HomebrewがXcodeとCMakeの適切な場所であなたに伝えるディレクトリを使用してください。

+0

。私はcmakeビルドにopensslのインストールされた場所を&リンクする必要がありました。感謝のためにありがとう@nega –

+0

@nega - 私にとってはうまくいかず、opensslはkeg-onlyで、別のバージョンはoptにリンクしています。 – dcp

+0

@dcp「動作しません」という意味はどうですか?多分新しい質問を開いてここにリンクすれば、私は助けてくれるかもしれません。 – nega

関連する問題