#include <openssl/dh.h>
#include <openssl/bn.h>
错误:无法打开源文件“openssl / bn.h”,无法打开源文件“openssl / dh.h”???什么是错的
答案 0 :(得分:3)
确保在系统上安装了libssl。 如果您使用的是linux命令
$ yum list libssl
如果已安装。确保在include目录中给出了它的路径。如果你正在使用gcc,你可以告诉gcc使用
在目录中搜索-I / path_of_libssl文件夹
答案 1 :(得分:2)
您可能错过了包含路径。如果您使用的是Visual Studio,则应转到Tools-&gt; Options-&gt; Projects and Solutions-&gt; C ++目录,然后从下拉列表选项“include files”中选择并添加openssl include文件夹的路径。您可以将openssl文件夹复制到sources文件夹中,然后更改为“openssl / bn.h”。
答案 2 :(得分:1)
问题是,你的编译器找不到头文件bn.h.原因可能是您的包含路径有问题。
也可能是您没有安装头文件。根据您的系统,您需要安装一个名为libssl-dev的软件包。此程序包包含头文件。包libssl仅包含共享对象文件(以.so结尾),这些是链接过程所需,而不是编译过程。如果安装libssl-dev解决了您的问题并且之后遇到了链接器问题,那么您还应该安装libssl。
答案 3 :(得分:0)
您要么丢失了该文件,要么没有正确设置包含路径。