使用 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 存储服务】关于中国区Azure Storage Account 存储账号服务误删除后的恢复问题

    问题描述 在Azure上,如果需要恢复之前删除的存储账户(Storage Account), 有什么办法呢? 问题解答 Azure 现在推出了自主恢复已删除的存储账号的功能,具体步骤如下: 第一步: ...

  2. 【Azure Developer】解答《美丽的数学》一书中P120页的一道谜题:寻找第四个阶乘和数

    一道谜题 在观看<美丽的数学>一书中,在120页中有一道谜题: 数字145被称为一个阶乘和数, 因为它具有以下有趣的属性,如果我们将它的各位数字的阶乘相加,会得到该数字本身 1! +4! ...

  3. 导入Excel文件的时候公式为【#Ref!】应该怎么解决?

    前言 在我们使用Excel时,经常会遇到一个问题,就是导入Excel时公式显示为[#Ref!]的情况.这通常是因为公式中引用的单元格已被删除或对应的工作表被删除,导致原公式无法识别对应的参数而显示为[ ...

  4. Mysql基础目录

    尚硅谷Mysql课程笔记 课程链接: https://www.bilibili.com/video/BV1iq4y1u7vj?p=1 第01章_数据库概述 第02章_MySQL环境搭建 第03章_基本 ...

  5. C++ //模板案例-数组封装类

    1 //模板案例-数组封装类 2 //描述 3 //实现一个通用的数组类 4 //1.可以对内置数据类型以及自定义数据类型的数据进行储存 5 //2.将数组很脏的数据储存到堆区 6 //3.构造函数中 ...

  6. 10、zookeeper的leader选举

    leader选举 服务器状态 looking:寻找leader状态.当服务器处于该状态时,它会认为当前集群中没有leader,因此需要进入leader选举状态 following:跟随着状态.表明当前 ...

  7. day04-应用线程03

    JavaGUI-坦克大战04 7.线程的应用03 7.3坦克大战4.0版 7.3.4功能3:敌方坦克自由移动 功能3:让敌人的坦克也可以自由随机地上下左右移动 思路: 因为要求敌人的坦克自由移动,因此 ...

  8. Morris遍历:常数空间遍历二叉树

    Morris遍历 cur有左树且第一次遍历到,去左孩子 没左树或者第二次遍历到,去右孩子 没右树,去后继节点 得到Morris序.对于该序列中出现两次的节点,只保留第一次遍历,结果就是先序遍历.只保留 ...

  9. 【atcoder 293 F - Erase Subarrays】【动态规划】

    import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public ...

  10. 【STM32 F4 HAL】记录一个比较玄学的pwm输出问题

    事情是这样的: 最近在做平衡小车,硬件电路都搭好了,试着驱动了下有刷电机,发现两个都动不了,就以为是电路的问题,后面又重新检查了一遍,问题就进化成了只有一个电机在转. 因为之前看过一个学长的博客说可能 ...