ShadowSocks启动报错undefined symbol EVP_CIPHER_CTX_cleanup

本文主要解决openssl升级到1.1.0以上版本,导致shadowsocks2.8.2启动报undefined symbol: EVP_CIPHER_CTX_cleanup错误。

如果在安装完ShadowSocks后,启动时报

1
2
AttributeError: /usr/local/ssl/lib/libcrypto.so.1.1: undefined symbol: EVP_CIPHER_CTX_cleanup
shadowsocks start failed

的错误。

在终端输入:

1
nautilus /usr/local/lib/python2.7/dist-packages/shadowsocks/crypto/openssl.py

具体路径不同,请根据报错路径而定,但目的只有一个,就是找到openssl.py文件。

如果nautilus指令报错,那就用cd命令到这个目录下,使用vim编辑修改openssl.py文件。

如果是用文本文档打开,那搜索CIPHER_CTX_cleanup,应该有两处,替换为CIPHER_CTX_reset,然后保存文件。

如果是用vim编辑,那么输入

1
2
:%s/cleanup/reset/
:x

然后重新运行Shadowsocks即可。

具体原因可以参考这篇文章

文章目录
  1. 1. 具体路径不同,请根据报错路径而定,但目的只有一个,就是找到openssl.py文件。
|