如何在64位计算机上安装32位版本的libstdc ++。so.6


17

我需要在64位Ubuntu 8.04.2服务器上安装32位版本的libstdc ++。so.6。

当我尝试时apt-get install ia32-libs,它说

root@devserver:~/downloads# apt-get install ia32-libs
Reading package lists... Done
Building dependency tree
Reading state information... Done
ia32-libs is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 133 not upgraded.

但是,当我尝试启用PHP扩展(libpdf_php.so)时,该扩展使用此运行时库在php错误日志中记录了以下错误。

root@devserver:~/downloads# cat /var/log/apache2/php_error.log
[01-Nov-2011 16:54:09] PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php5/20060613/libpdf_php.so' - /usr/lib/php5/20060613/libpdf_php.so: wrong ELF class: ELFCLASS32 in Unknown on line 0
root@devserver:~/downloads#

Answers:


3

是什么让您认为您需要32位版本的libstdc ++。so.6?

64位Ubuntu运行64位Apache,后者运行64位PHP,看来无法加载32位libpdf_php.so,它在错误消息中告诉您。

安装ia32-libs不太可能解决问题-我会说您需要64位版本的libpdf_php.so

看起来pdflib的网站为x86-64体系结构提供了单独的下载-我下载了存档,其中的.so文件肯定是64位的。


33

你可能已经习惯了apt-get install lib32stdc++6


2
这回答了标题中的问题(如何在64位计算机上安装libstdc ++。so.6的32位版本)。
setempler 2014年

嗨,当我运行sudo apt-get install lib32stdc++6它时,给我o / p就像: The following NEW packages will be installed: lib32stdc++6 但是,当我运行ls /usr/lib32它时,它不存在。请让我知道我错了。谢谢。
AB Bolim

这帮助我使野牛在Ubuntu 14.04上的Android源代码版本中运行。
bonh,2015年

1
我必须:i386在软件包名称之后添加。(我实际上想要32位版本的libstdc ++。so.5:apt-get install libstdc++5:i386
Steven C. Howell

1

问题不在于libstdc ++,而在于libpdf_php.so。您需要下载该库的32位版本。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.