我正在运行El Capitan的Mac上运行C ++项目,即使在使用Homebrew安装openssl后我也会收到此错误:
g++ -Wall -g -std=c++11 -I../libSocket/src -I../libData/src -c src/fsslhandler.cpp -o obj/fsslhandler.o
In file included from src/fsslhandler.cpp:1:
In file included from src/fsslhandler.h:8:
../libSocket/src/sslsocket.h:6:10: fatal error: 'openssl/ssl.h' file not found
#include <openssl/ssl.h>
^
1 error generated.
make: *** [obj/fsslhandler.o] Error 1
在搜索解决方案后,我找到一个无效:
brew link openssl --force
为了使其工作,我必须在编译时添加以下标志:
LDFLAGS:-L/usr/local/opt/openssl/lib
CPPFLAGS:-I/usr/local/opt/openssl/include
如何在没有此标志的情况下使其正常工作?
Openssl用于使用brew安装的El Capitan,但我重新安装了OS X并使用自制软件更新了openssl,我就是这样。
感谢
答案 0 :(得分:7)
答案 1 :(得分:0)
答案 2 :(得分:0)
尝试将它们放入您的bash或zsh个人资料中。
export PATH="/usr/local/opt/openssl@1.1/bin:$PATH"
export LDFLAGS="-L/usr/local/opt/openssl@1.1/lib"
export CPPFLAGS="-I/usr/local/opt/openssl@1.1/include"
export PKG_CONFIG_PATH="/usr/local/opt/openssl@1.1/lib/pkgconfig"