如何在Amazon Linux 2中安装libssl3.so库?
在Amazon Linux 2中安装libssl3.so解决LibreOffice运行错误
libssl3.so属于OpenSSL 3.x系列库,而Amazon Linux 2默认预装的是OpenSSL 1.0.2,常规的openssl、openssl-devel包只提供旧版本的libssl.so.1.0.0,所以无法解决问题。以下是两种可行的解决方法:
方法一:编译安装OpenSSL 3.x(推荐,兼容性更好)
- 安装编译依赖:
yum install -y gcc make perl-core zlib-devel wget - 下载OpenSSL 3.x LTS版本源码(以3.0.10为例,可替换为最新LTS版本):
wget https://www.openssl.org/source/openssl-3.0.10.tar.gz - 解压并进入源码目录:
tar -xzf openssl-3.0.10.tar.gz cd openssl-3.0.10 - 配置编译参数(指定安装路径并启用共享库):
./config --prefix=/usr/local/openssl --openssldir=/usr/local/openssl shared zlib - 编译并安装:
make -j$(nproc) make install - 配置系统库路径并更新缓存:
echo "/usr/local/openssl/lib64" >> /etc/ld.so.conf.d/openssl-3.conf ldconfig - 验证安装:
输出中应能看到ldd /opt/libreoffice7.4/program/soffice.bin | grep libssllibssl3.so => /usr/local/openssl/lib64/libssl3.so的条目。
方法二:直接安装第三方RPM包(快速但需注意兼容性)
如果不想编译,可以直接下载CentOS/RHEL兼容的libssl3 RPM包安装:
- 下载对应架构的包(以x86_64为例):
wget https://dl.fedoraproject.org/pub/epel/8/Everything/x86_64/Packages/l/libssl3-3.0.7-2.el8.x86_64.rpm - 强制安装(忽略依赖冲突,仅适用于单独安装libssl3的场景):
rpm -ivh libssl3-3.0.7-2.el8.x86_64.rpm --nodeps - 验证步骤同方法一。
容器环境优化建议
如果是在Docker镜像中构建,建议将上述步骤写入Dockerfile,避免每次手动操作。示例片段:
FROM amazonlinux:2 RUN yum install -y gcc make perl-core zlib-devel wget \ && wget https://www.openssl.org/source/openssl-3.0.10.tar.gz \ && tar -xzf openssl-3.0.10.tar.gz \ && cd openssl-3.0.10 \ && ./config --prefix=/usr/local/openssl --openssldir=/usr/local/openssl shared zlib \ && make -j$(nproc) \ && make install \ && echo "/usr/local/openssl/lib64" >> /etc/ld.so.conf.d/openssl-3.conf \ && ldconfig \ && cd .. \ && rm -rf openssl-3.0.10 openssl-3.0.10.tar.gz \ && yum clean all
内容的提问来源于stack exchange,提问作者mike01010
相关产品推荐
相关产品推荐

