libc.so.6() (64 位) 是 .... ubuntu 11.10 所需要的

libc.so.6() (64 位) 是 .... ubuntu 11.10 所需要的

我正在尝试在 Ubuntu 11.10 (64 位) 上安装 vPostgres (Vmware 的 postgres 版本) 的 odbc 驱动程序。我已下载安装程序 (64 位) 的 rpm 文件,当我尝试使用以下命令安装 rpm 时:

rpm -ivh Vmware-vPostgres-client.rpm,它显示了这个错误:

错误:依赖项失败:
    VMware-vPostgres-client-1.0.1.1145-532311.x86_64 需要 libc.so.6()(64bit)
    VMware-vPostgres-client-1.0.1.1145-532311.x86_64 需要 libc.so.6(GLIBC_2.2.5)(64bit)
    VMware-vPostgres-client-1.0.1.1145-532311.x86_64 需要 libc.so.6(GLIBC_2.3)(64bit)
    VMware-vPostgres-client-1.0.1.1145-532311.x86_64 需要 libc.so.6(GLIBC_2.3.3)(64bit)
    VMware-vPostgres-client-1.0.1.1145-532311.x86_64 需要 libdl.so.2()(64bit)
    VMware-vPostgres-client-1.0.1.1145-532311.x86_64 需要 libdl.so.2(GLIBC_2.2.5)(64bit)
    VMware-vPostgres-client-1.0.1.1145-532311.x86_64 需要 libpthread.so.0()(64bit)
    VMware-vPostgres-client-1.0.1.1145-532311.x86_64 需要 libpthread.so.0(GLIBC_2.2.5)(64bit)
    VMware-vPostgres-client-1.0.1.1145-532311.x86_64 需要 libresolv.so.2()(64bit)
    VMware-vPostgres-client-1.0.1.1145-532311.x86_64 需要 libresolv.so.2(GLIBC_2.2.5)(64bit)

我尝试过以下方法:

定位 libpthread.so.0 返回:

/lib/i386-linux-gnu/libpthread.so.0

/lib/x86_64-linux-gnu/libpthread.so.0

/lib32/libpthread.so.0

我得到了所有其他文件的类似位置:locate libc.so.6

/lib/i386-linux-gnu/libc.so.6

/lib/x86_64-linux-gnu/libc.so.6

/lib32/libc.so.6

等等。

我尝试使用以下方法创建符号链接:

sudo ln -s lib/x86_64-linux-gnu/libc.so.6
 /lib64/libc.so.6

sudo ln -s lib/x86_64-linux-gnu/libc.so.6
 /lib/libc.so.6

sudo ln -s lib/x86_64-linux-gnu/libc.so.6
 libc.so.6

但都没有用。我不确定它到底在哪里搜索这些文件。

ldd Vmware-vPostgres-client.rpm 没有太大帮助,并返回“不是动态可执行文件”,这是预期的

我尝试在 /etc/ld.so.conf 文件中添加路径

包括 lib/x86_64-linux-gnu/libc.so.6

我也尝试将 LD_LIBRARY_PATH 设置为指定的文件,但没有用。

ldd --version 显示 GLIBC 2.13

有人能帮我找出它到底在哪里搜索文件吗?

答案1

Ubuntu 使用 Debian 打包格式,因此您无法在基于 Deb 的发行版上合理地安装 RPM。虽然可以安装该rpm工具,但软件包依赖项不会与 Deb 软件包的依赖项集成,并且软件包的内容也不一定能正常工作。

最好的解决方案是找到所需软件的 Deb 包,其次是自己将其构建成 Deb 包(这需要大量工作)。如果这些都不可行,最后的办法是尝试使用外星人将 RPM 转换为 Deb。您仍然需要手动处理依赖项,并且可能需要在包脚本中进行更改。

答案2

“外星人” 对我有用:

$ sudo apt-get install alien
$ sudo alien VMware-vPostgres-client-1.0.1.1145-532311.x86_64.rpm
vmware-vpostgres-client_1.0.1.1145-532312_amd64.deb generated
$ sudo dpkg -i vmware-vpostgres-client_1.0.1.1145-532312_amd64.deb
...
Unpacking vmware-vpostgres-client (from vmware-vpostgres-client_1.0.1.1145-532312_amd64.deb) ...
Setting up vmware-vpostgres-client (1.0.1.1145-532312) ...
Processing triggers for libc-bin ...
ldconfig deferred processing now taking place

相关内容