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

Mit*_*ran 20 64-bit php extension shared-library 32-bit

我需要在 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.
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试启用使用此运行时库的 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#
Run Code Online (Sandbox Code Playgroud)

Mad*_*Boy 36

你本可以使用apt-get install lib32stdc++6.

  • 这回答了我标题中的问题(How to install 32-bit version of libstdc++.so.6 on a 64 bit machine)。 (2认同)

Ser*_*gey 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 位的。