文章总结: 文档记录了在Ubuntu22系统中执行wasm2c1.0.36时因系统默认使用OpenSSL3.0而缺少libcrypto.so.1.1库的解决方案。作者分析版本差异后提出三种方法:手动安装旧版deb包、编译OpenSSL1.1.1源码并设置环境变量、利用系统snap机制创建符号链接。最终通过链接snap目录中的库文件成功解决问题,但指出此类操作在AI时代实际意义有限。 综合评分: 76 文章分类: 安全工具,解决方案,技术标准,其他
Ubuntu 22中找不到libcrypto.so.1.1
原创
沈沉舟 沈沉舟
青衣十三楼飞花堂
2026年4月29日 19:54 北京
在小说阅读器读本章
去阅读
16.31 Ubuntu 22中找不到libcrypto.so.1.1
https://scz.617.cn/unix/202604291930.txt
Q:
当前系统是Ubuntu 22。执行wasm2c 1.0.36时,提示找不到libcrypto.so.1.1。用ldd查看,确实找不到。
$ ldd /path/wabt-1.0.36/bin/wasm2c
libcrypto.so.1.1 => not found
但之前wasm2c 1.0.34无此问题。
A:
参看
Ubuntu的旧版OpenSSL
https://nz2.archive.ubuntu.com/ubuntu/pool/main/o/openssl/
OpenSSL源码
https://openssl-library.org/source/old/index.html
https://openssl-library.org/source/old/1.1.1/
wasm2c 1.0.36用到libcrypto.so.1.1,而Ubuntu 22用OpenSSL 3.0。
$ ls -l /usr/lib/x86_64-linux-gnu/libcrypto.so*
lrwxrwxrwx 1 root root 14 Feb 7 2023 /usr/lib/x86_64-linux-gnu/libcrypto.so -> libcrypto.so.3
-rw-r--r-- 1 root root 4451632 Feb 7 2023 /usr/lib/x86_64-linux-gnu/libcrypto.so.3
$ dpkg -S /usr/lib/x86_64-linux-gnu/libcrypto.so.3
libssl3:amd64: /usr/lib/x86_64-linux-gnu/libcrypto.so.3
$ apt-cache search libssl3
libssl3 - Secure Sockets Layer toolkit - shared libraries
$ apt-cache search libssl1
(无输出)
Ubuntu 22已无法正常安装libssl1。有人手工下载旧版libssl1.1*.deb,再dpkg安装。比如
wget https://nz2.archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2_amd64.deb
dpkg -i libssl1.1_1.1.1f-1ubuntu2_amd64.deb
用dpkg安装旧版,太野了,并不推荐。较文明的办法是下载低版本OpenSSL源码,自己编译低版本,并设置环境变量。比如
mkdir /somepath
cd /somepath
wget https://www.openssl.org/source/openssl-1.1.1w.tar.gz
tar xvfz openssl-1.1.1w.tar.gz
cd openssl-1.1.1w
./config
make
mkdir /somepath/lib
cp /somepath/openssl-1.1.1w/libcrypto.so.1.1 /somepath/lib/
cp /somepath/openssl-1.1.1w/libssl.so.1.1 /somepath/lib/
export LD_LIBRARY_PATH=/somepath/lib:$LD_LIBRARY_PATH
前述几种办法我都没采用,因为Ubuntu 22的snap机制可能有libssl1,复用之。
$ ls -l /snap/core20/current/usr/lib/x86_64-linux-gnu/libcrypto.so*
-rw-r--r-- 1 root root 2954080 May 25 2023 /snap/core20/current/usr/lib/x86_64-linux-gnu/libcrypto.so.1.1
$ ldd /snap/core20/current/usr/lib/x86_64-linux-gnu/libcrypto.so*
(略)
$ ln -s /snap/core20/current/usr/lib/x86_64-linux-gnu/libcrypto.so.1.1 /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1
$ /path/wabt-1.0.36/bin/wasm2c --version
1.0.36
$ ldd /path/wabt-1.0.36/bin/wasm2c
(略)
AI时代,这些笔记已毫无意义,只是习惯性折腾过就记一笔而已。
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:青衣十三楼飞花堂 沈沉舟 沈沉舟《Ubuntu 22中找不到libcrypto.so.1.1》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。









评论