
我需要在 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#
答案1
你本來可以用的apt-get install lib32stdc++6
。
答案2
是什麼讓您認為您需要 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 位的。
答案3
問題不在於 libstdc++,而是 libpdf_php.so。您需要下載該庫的 32 位元版本。