我正在尝试与 Boost:asio 建立 SSL 连接。
现在,我的编译器说找不到openssl/conf.h
我想知道这条路在哪里以及如何解决这个问题。
提前致谢。
答案1
在我的路径中,它是/usr/include/openssl/conf.h
,我们可以通过以下方式查询dpkg
来找到它来自的包:
dpkg -S /usr/include/openssl/conf.h
其结果为:
libssl-dev: /usr/include/openssl/conf.h
因此你必须运行
sudo apt-get install libssl-dev
以获取该程序的开发文件。
如果你已经将它安装在非标准位置,你可以使用
export LD_LIBRARY_PATH=/location/of/lib
您还可以使用该build-dep
命令安装特定程序所需的所有文件,例如
sudo apt-get build-dep openssl
答案2
头文件通常以 -dev 后缀单独打包。本例中,您需要的文件位于 libssl-dev 中。
您可以使用Ubuntu 软件包内容搜索页面来定位缺少标题的正确开发包。
任何由开发包安装的标头都应该在默认搜索路径下自动找到,因此通常只需安装所需的包即可解决问题。