使用 yum 安装 unixODBC 时报错怎么办

背景介绍

在使用 yum 安装 unixODBC 时,上报如下错误:

[root@mc0-0002 odbc_connection]# yum install -y unixODBC

Traceback (most recent call last):

File "/usr/lib64/python3.7/site-packages/libdnf/common_types.py", line 14, in swig_import_helper

return importlib.import_module(mname)

File "/usr/lib64/python3.7/importlib/init.py", line 127, in import_module

return _bootstrap._gcd_import(name[level:], package, level)

File "", line 1006, in _gcd_import

File "", line 983, in _find_and_load

File "", line 967, in _find_and_load_unlocked

File "", line 670, in _load_unlocked

File "", line 583, in module_from_spec

File "", line 1043, in create_module

File "", line 219, in _call_with_frames_removed

ImportError: /lib64/libcurl.so.4: symbol SSLv3_client_method version OPENSSL_1_1_0 not defined in

During handling of the above exception, another exception occurred:

Traceback (most recent call last):

File "/usr/bin/yum", line 57, in

from dnf.cli import main

File "/usr/lib/python3.7/site-packages/dnf/init.py", line 30, in

import dnf.base

File "/usr/lib/python3.7/site-packages/dnf/base.py", line 29, in

import libdnf.transaction

File "/usr/lib64/python3.7/site-packages/libdnf/init.py", line 3, in

from . import common_types

File "/usr/lib64/python3.7/site-packages/libdnf/common_types.py", line 17, in

_common_types = swig_import_helper()

File "/usr/lib64/python3.7/site-packages/libdnf/common_types.py", line 16, in swig_import_helper

return importlib.import_module('_common_types')

File "/usr/lib64/python3.7/importlib/init.py", line 127, in import_module

return _bootstrap._gcd_import(name[level:], package, level)

ModuleNotFoundError: No module named '_common_types'

问题分析

[root@mc0-0002 ~]# ldd /lib64/libcurl.so.4

linux-vdso.so.1 (0x0000fffe5bf30000)

libnghttp2.so.14 => /lib64/libnghttp2.so.14 (0x0000fffe5be20000)

libidn2.so.0 => /lib64/libidn2.so.0 (0x0000fffe5bde0000)

libssh.so.4 => /lib64/libssh.so.4 (0x0000fffe5bd40000)

libpsl.so.5 => /lib64/libpsl.so.5 (0x0000fffe5bd10000)

libssl.so.1.1 => /usr/local/etc/lib/libssl.so.1.1 (0x0000fffe5bc60000)

libcrypto.so.1.1 => /usr/local/etc/lib/libcrypto.so.1.1 (0x0000fffe5b9b0000)

libgssapi_krb5.so.2 => /lib64/libgssapi_krb5.so.2 (0x0000fffe5b940000)

libkrb5.so.3 => /lib64/libkrb5.so.3 (0x0000fffe5b840000)

libk5crypto.so.3 => /lib64/libk5crypto.so.3 (0x0000fffe5b800000)

libcom_err.so.2 => /lib64/libcom_err.so.2 (0x0000fffe5b7d0000)

libldap-2.4.so.2 => /lib64/libldap-2.4.so.2 (0x0000fffe5b760000)

liblber-2.4.so.2 => /lib64/liblber-2.4.so.2 (0x0000fffe5b730000)

libbrotlidec.so.1 => /lib64/libbrotlidec.so.1 (0x0000fffe5b700000)

libz.so.1 => /lib64/libz.so.1 (0x0000fffe5b6c0000)

libpthread.so.0 => /lib64/libpthread.so.0 (0x0000fffe5b680000)

libc.so.6 => /lib64/libc.so.6 (0x0000fffe5b4f0000)

/lib/ld-linux-aarch64.so.1 (0x0000fffe5bf40000)

libunistring.so.2 => /lib64/libunistring.so.2 (0x0000fffe5b350000)

librt.so.1 => /lib64/librt.so.1 (0x0000fffe5b320000)

libdl.so.2 => /lib64/libdl.so.2 (0x0000fffe5b2f0000)

libkrb5support.so.0 => /lib64/libkrb5support.so.0 (0x0000fffe5b2c0000)

libkeyutils.so.1 => /lib64/libkeyutils.so.1 (0x0000fffe5b290000)

libresolv.so.2 => /lib64/libresolv.so.2 (0x0000fffe5b250000)

libsasl2.so.3 => /lib64/libsasl2.so.3 (0x0000fffe5b210000)

libm.so.6 => /lib64/libm.so.6 (0x0000fffe5b140000)

libbrotlicommon.so.1 => /lib64/libbrotlicommon.so.1 (0x0000fffe5b100000)

libselinux.so.1 => /lib64/libselinux.so.1 (0x0000fffe5b0b0000)

libcrypt.so.1 => /lib64/libcrypt.so.1 (0x0000fffe5b050000)

libsecurity.so.0 => /lib64/libsecurity.so.0 (0x0000fffe5b020000)

libpcre2-8.so.0 => /lib64/libpcre2-8.so.0 (0x0000fffe5af80000)

[root@mc0-0002 openssl-1.1.1a]# nm libssl.so.1.1 | grep SSLv3_client_method

确实没有SSLv3_client_method

解决办法

下载 openssl-1.1.1a 进行编译。

[root@mc0-0002 etc]# wget https://www.openssl.org/source/openssl-1.1.1a.tar.gz

tar -zxvf openssl-1.1.1a.tar.gz

cd openssl-1.1.1a/

./config shared enable-ssl3 enable-ssl3-method

make install

检查新编译的文件是否包含 SSLv3_client_method。

[root@mc0-0002 openssl-1.1.1a]# nm libssl.so.1.1 | grep SSLv3_client_method

0000000000020800 T SSLv3_client_method

编译完成后是有SSLv3_client_method

使用编译好的 libssl.so.1.1 替换原来的 libssl.so.1.1。

[root@mc0-0002 openssl-1.1.1a]# cp /etc/openssl-1.1.1a/libssl.so.1.1 /usr/local/etc/lib/

cp: overwrite '/usr/local/lib/libssl.so.1.1'? y

至此,位于原/usr/local/lib/目录下的/usr/local/lib/libssl.so.1.1 文件正常,可使用 yum 安装 unixODBC 了

使用 yum 安装 unixODBC。

[root@mc0-0002 odbc_connection]# yum install -y unixODBC

Last metadata expiration check: 0:12:31 ago on Thu 23 Mar 2023 05:33:19 PM CST.

Dependencies resolved.

Package Architecture Version Repository Size

Installing:

unixODBC aarch64 2.3.7-2.ky10 ks10-adv-os 389 k

Transaction Summary

Install 1 Package

Total download size: 389 k

Installed size: 2.4 M

Is this ok [y/N]: y

Downloading Packages:

unixODBC-2.3.7-2.ky10.aarch64.rpm 4.8 MB/s | 389 kB 00:00

Total 4.7 MB/s | 389 kB 00:00

Running transaction check

Transaction check succeeded.

Running transaction test

Transaction test succeeded.

Running transaction

Preparing : 1/1

Installing : unixODBC-2.3.7-2.ky10.aarch64 1/1

Running scriptlet: unixODBC-2.3.7-2.ky10.aarch64 1/1

/sbin/ldconfig: /usr/local/lib/libkrb5support_gauss.so.0 is not a symbolic link

/sbin/ldconfig: /usr/local/lib/libcom_err_gauss.so.3 is not a symbolic link

/sbin/ldconfig: /usr/local/lib/libpq_ce.so.5 is not a symbolic link

/sbin/ldconfig: /usr/local/lib/libk5crypto_gauss.so.3 is not a symbolic link

/sbin/ldconfig: /usr/local/lib/libodbcinst.so.2 is not a symbolic link

/sbin/ldconfig: /usr/local/lib/libpq.so.5 is not a symbolic link

/sbin/ldconfig: /usr/local/lib/libgssapi_krb5_gauss.so.2 is not a symbolic link

/sbin/ldconfig: /usr/local/lib/libkrb5_gauss.so.3 is not a symbolic link

/sbin/ldconfig: /usr/local/lib/libgssrpc_gauss.so.4 is not a symbolic link

/sbin/ldconfig: /usr/local/lib/libkrb5support_gauss.so.0 is not a symbolic link

/sbin/ldconfig: /usr/local/lib/libcom_err_gauss.so.3 is not a symbolic link

/sbin/ldconfig: /usr/local/lib/libpq_ce.so.5 is not a symbolic link

/sbin/ldconfig: /usr/local/lib/libk5crypto_gauss.so.3 is not a symbolic link

/sbin/ldconfig: /usr/local/lib/libodbcinst.so.2 is not a symbolic link

/sbin/ldconfig: /usr/local/lib/libpq.so.5 is not a symbolic link

/sbin/ldconfig: /usr/local/lib/libgssapi_krb5_gauss.so.2 is not a symbolic link

/sbin/ldconfig: /usr/local/lib/libkrb5_gauss.so.3 is not a symbolic link

/sbin/ldconfig: /usr/local/lib/libgssrpc_gauss.so.4 is not a symbolic link

Verifying : unixODBC-2.3.7-2.ky10.aarch64 1/1

Installed:

unixODBC-2.3.7-2.ky10.aarch64

Complete!

[root@mc0-0002 odbc_connection]#

使用yum安装unixODBC时报错怎么办的更多相关文章

  1. CentOS中yum安装软件时报错:No package XXX available

    yum 安装软件时,报错:No package XXX available. [root@localhost ~]# yum -y install redis Loaded plugins: fast ...

  2. yum 安装软件时报错

    报错信息 Another app is currently holding the yum lock; waiting for it to exit 处理方法 rm -rf /var/run/yum. ...

  3. yum安装软件时报错libmysqlclient.so.18()(64bit)

    错误信息 yum -y install sysbench 安装sysbench提示缺少依赖包如下图: 主要原因 缺少Percona-XtraDB-Cluster-shared-55-5.5.37-25 ...

  4. 使用yum安装php*时报错的解决办法

    # yum -y install php* 注意: php53-odbc64-5.3.3-2.el5.x86_64 from base has depsolving problems  -->  ...

  5. yum安装软件时报错:Loaded plugins:fastestnirror,security Existing lock /var/run/yum.pid

    在linux中使用yum时出现如下错误: Loaded plugins: fastestmirror, security Existing lock /var/run/yum.pid: another ...

  6. CentOS6.5安装readline时报错:/usr/bin/ld : cannot find -lncurses

    CentOS6.5安装readline时报错:/usr/bin/ld : cannot find -lncurses 解决方法: 安装ncurses-devel,输入命令: #yum install ...

  7. 解决编译安装php时报错:Please reinstall the iconv library

    编译安装php7时报错“Please reinstall the iconv library”,也就是让重新安装iconv库.但yum安装又提示“No package libiconv availab ...

  8. 安装tcpreplay时报错:configure: error: libdnet not found

    安装tcpreplay时报错configure: error: libdnet not found 解决方法: 下载包libdnet-1.8.tar.gz并安装,依次执行: ./configure m ...

  9. 安装 node-sass 时报错

    在安装 node-sass 时报错,截图如下 解决方法如下: npm install --save node-sass --registry=https://registry.npm.taobao.o ...

  10. 安装Django时报错'module' object has no attribute 'lru_cache'

    使用pip方法安装Django时报错'module' object has no attribute 'lru_cache' 解决办法如下 命令行输入命令sudo pip install Django ...

随机推荐

  1. 【Azure 应用服务】App Service与Application Gateway组合使用时发生的域名跳转问题如何解决呢?

    问题描述 为App Service配置了应用服务网关(Application Gateway),并且为Application Gateway配置了自定义域名,通过浏览器访问时,出现域名跳转问题,由自定 ...

  2. 【自动化】使用PlayWright+代理IP实现多环境隔离

    Playwright是由微软公司2020年初发布的新一代自动化测试工具,相较于目前最常用的Selenium,它仅用一个API即可自动执行Chromium.Firefox.WebKit等主流浏览器自动化 ...

  3. Java UML类图

    在UML的静态机制中类图是一个重点,它不但是设计人员关心的核心,更是实现人员关注的核心.建模工具也主要根据类图来产生代码.类图在UML的9个图中占据了一个相当重要的地位.James Rumbaugh对 ...

  4. Toyota Programming Contest 2024#2(AtCoder Beginner Contest 341)D - Only one of two(数论、二分)

    目录 链接 题面 题意 题解 代码 总结 链接 D - Only one of two 题面 题意 求第\(k\)个只能被\(N\)或\(M\)整除的数 题解 \([1,x]\)中的能被\(n\)整除 ...

  5. CPNtools协议建模安全分析---实例(二)

    首先,token值是变迁的内部的,当变迁点火触发的时候token才会在网络中移动.在颜色Petri网中token是有区分的. 1.我么现在举一个学生吃饼的例子 ,颜色这样定义.    s表示一个学生类 ...

  6. liquibase customChange

    liquibase customChange liquibase changeset 执行Java代码. liquibase支持yml等文件,支持引入sql文件,还支持Java这种方式执行change ...

  7. redis---面经

    redis 偏应用的总结:redis 应用 Redis是什么? Redis是什么 对象 字符串 自增,键值对. SDS数据结构记录长度,已经使用,和总共长度,并且提前多余出容量,防止一直扩容缩容. 字 ...

  8. pod探针的三种类型及三种检测方式

    Pod探针是Kubernetes中的一种机制,用于检测Pod中的容器是否正常运行.它主要有三种类型:存活探针(LivenessProbe).就绪探针(ReadinessProbe)和启动探针(Star ...

  9. C# NAudio 播放多个MP3文件

    C# 使用 NAudio 来播放多个MP3文件.上代码 1.引入NAudio:using NAudio.Wave; 2.定义变量: private WaveOutEvent outputDevice; ...

  10. day07-JavaScript04

    JavaScript04 11.DOM02 11.3HTML-DOM文档说明 11.3.1基本介绍 在HTML DOM(文档对象模型)中,每个部分都是节点: 1)文档本身是文档节点 2)所有HTML元 ...