在 ./configure 期间未找到 OpenSSL

use*_*433 15 openssl ubuntu configure

我正在尝试在我的 Ubuntu 14.04.3 上制作一个类似比特币的守护进程。当我打./configure

checking for SSL... no
configure: error: openssl  not found.
Run Code Online (Sandbox Code Playgroud)

# apt-get install libssl-dev linux-headers-$(uname -r)
Reading package lists... Done
Building dependency tree
Reading state information... Done
libssl-dev is already the newest version.
linux-headers-3.13.0-61-generic is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Run Code Online (Sandbox Code Playgroud)

我用谷歌搜索了错误消息,但我不知道该怎么做。我在我的另一个 Ubuntu 14.04 上成功地制作了那个守护进程,所以源代码和配置脚本都很好。

UPD1。安装 openssl 没有帮助:

# apt-get install openssl
..
openssl is already the newest version.
..
Run Code Online (Sandbox Code Playgroud)

我检查了 config.log 并且最后没有关于 openssl 的任何内容 -HAVE_WORKING_BOOST_SLEEP_FOR指的是checking for dynamic linked boost test... yes-./configure输出的最后一行:

# tail config.log
#define HAVE_BOOST /**/
#define HAVE_BOOST_SYSTEM /**/
#define HAVE_BOOST_FILESYSTEM /**/
#define HAVE_BOOST_PROGRAM_OPTIONS /**/
#define HAVE_BOOST_THREAD /**/
#define HAVE_BOOST_CHRONO /**/
#define HAVE_BOOST_UNIT_TEST_FRAMEWORK /**/
#define HAVE_WORKING_BOOST_SLEEP_FOR 1

configure: exit 1
Run Code Online (Sandbox Code Playgroud)

UPD2。我在日志中发现,离结束还很远:

configure:25626: checking for SSL
configure:25633: $PKG_CONFIG --exists --print-errors "libssl"
Package libssl was not found in the pkg-config search path.
Perhaps you should add the directory containing `libssl.pc'
to the PKG_CONFIG_PATH environment variable
No package 'libssl' found
configure:25636: $? = 1
configure:25650: $PKG_CONFIG --exists --print-errors "libssl"
Package libssl was not found in the pkg-config search path.
Perhaps you should add the directory containing `libssl.pc'
to the PKG_CONFIG_PATH environment variable
No package 'libssl' found
configure:25653: $? = 1
configure:25667: result: no
No package 'libssl' found
configure:25683: error: openssl  not found.
Run Code Online (Sandbox Code Playgroud)

Shi*_*Guo 16

你会libssl-dev在 Synaptic Package Manager (Ubuntu 16.04) 中找到一个包名,安装后libssl-dev,一切都会解决。顺便说一句,libssl1.0.0不工作。你最好安装libssl-devlibssl1.0.0在同一时间。

顺便说一下,我认为以下解决方案不起作用:'pkg-config' 在您的 PATH 中,而 PKG_CONFIG_PATH 包含一个 openssl.pc 文件。如果 pkg-config 不可用,您可以通过以下方式手动设置 INCLUDE_DIR 和 LIB_DIR: R CMD INSTALL --configure-vars='INCLUDE_DIR=... LIB_DIR=...'


use*_*433 6

由于某种原因PKG_CONFIG_PATH,没有包含openssl.pcpkg-config 实用程序所需的文件的正确路径。我做到了find / -name 'openssl.pc'并在/usr/lib/x86_64-linux-gnu/pkgconfig/. 我的另一个 ubuntu 也使用该路径到./configure.

所以我跑了PKG_CONFIG_PATH="/usr/lib/x86_64-linux-gnu/pkgconfig/" ./configure ,这成功了!

另一件事,openssl.pc我的还有另一个,/usr/local/ssl/lib/pkgconfig/但是当我尝试使用它时,以下make命令因不同的错误而挂起(例如对函数的未知引用等)。