我在执行 g++ mycode.cpp
时遇到了这个错误, 这个 .cpp 文件包含一行 #include<openssl/rsa.h>
.现在,我知道错误的原因,我有两个计划来解决它:
我可以添加
openssl
/etc/profile
的路径,或者我也可以将 openssl 文件夹复制到/usr/include,所以我做了第一个计划,像这样:
CPLUS_INCLUDE_PATH=$CPLUS_INCLUDE_PATH:/mylib
export CPLUS_INCLUDE_PATH
(我的openssl文件夹路径是/mylib/openssl)
我又遇到了这个错误。
然后我尝试第二个方案,它通过了编译,(像这样/usr/include/openssl)。
现在,我的问题是,
为什么标题(“openssl/rsa.h”)可以在/usr/include/
下找到但在/mylib/
下找不到, 即使我已经将路径 (/mylib) 添加到 /etc/profile
?
最佳答案
在 Debian、Ubuntu 或其他衍生版本上安装 OpenSSL:
$ sudo apt-get install libssl-dev
在 Fedora、CentOS 或 RHEL 上安装 OpenSSL 开发工具包:
$ sudo yum install openssl-devel
安装后,尝试重新编译程序。
关于c++ - fatal error : openssl/rsa. h:没有那个文件或目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43131708/