如何使用最新的openssl更新?

时间:2011-07-06 15:06:38

标签: c++ openssl

我的计算机上安装了openssl 0.9.8g ... 它似乎有一个我遇到的已知错误。

我想安装当前版本的1.0.0d,似乎修复了这个错误。

所以,基本安装:

$ ./config
$ make
$ sudo make install

然而,即使在重新编译我的软件之后,我仍然会得到相同的错误,并且它确实来自0.9.8,因为它是在错误中写的:

  

错误:1408F06B:SSL   套路:SSL3_GET_RECORD:坏   减压:/ SourceCache /的 OpenSSL098 /OpenSSL098-35/src/ssl/s3_pkt.c:438:

2 个答案:

答案 0 :(得分:1)

假设您已将下载的OpenSSL版本安装到/home/yourname/openssl。然后,您需要告诉您的软件使用该自定义安装,而不是已经存在于您的文件系统上的预先打包的0.9.8。无需卸载,您可以在计算机上安装多个。 “告诉”您的软件在哪里找到您的自定义安装是通过为链接器提供正确的路径来查找libssl和libcrypto。将这些添加到Makefile中的链接选项:

-L/home/yourname/openssl/lib -Wl,-R/home/yourname/openssl/lib 

那么它应该与新版本链接就好了。要验证它,您可以使用

ldd <your_executable_or_library>

并验证是否在那里列出了自定义OpenSSL路径,而不是旧路径。

答案 1 :(得分:0)

我不确定您使用的操作系统,但我的猜测是您首先必须删除错误的旧版本,然后再安装新版本。某些操作系统不会将与sudo make install一起安装的库放在与数据包管理器相同的位置。此外,库的查找顺序可能会导致它加载旧库。