So installieren Sie die 32-Bit-Version von libstdc++.so.6 auf einem 64-Bit-Computer

So installieren Sie die 32-Bit-Version von libstdc++.so.6 auf einem 64-Bit-Computer

Ich muss die 32-Bit-Version von libstdc++.so.6 auf einem 64-Bit-Ubuntu 8.04.2-Server installieren.

als ich es versuchte apt-get install ia32-libs, hieß es

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.

Aber als ich versuchte, eine PHP-Erweiterung (libpdf_php.so) zu aktivieren, die diese Laufzeitbibliothek verwendet, wurde der folgende Fehler im PHP-Fehlerprotokoll protokolliert.

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#

Antwort1

Sie hätten verwenden können apt-get install lib32stdc++6.

Antwort2

Warum glauben Sie, dass Sie eine 32-Bit-Version von libstdc++.so.6 benötigen?

Unter der 64-Bit-Version von Ubuntu läuft eine 64-Bit-Version von Apache, auf der wiederum eine 64-Bit-Version von PHP läuft, die jedoch anscheinend keine 32-Bit-Version laden kann libpdf_php.so, wie die Fehlermeldung besagt.

Es ist unwahrscheinlich, dass die Installation von ia32-libs das Problem lösen wird - ich würde sagen, Sie benötigen eine 64-Bit-Version von libpdf_php.so

Es sieht aus wiepdflibs Websitehat einen separaten Download für die x86-64-Architektur – ich habe das Archiv heruntergeladen und die darin enthaltene .so-Datei ist definitiv 64-Bit.

Antwort3

Das Problem liegt nicht bei libstdc++, sondern bei libpdf_php.so. Sie müssen die 32-Bit-Version dieser Bibliothek herunterladen.

verwandte Informationen