Package-Management
libstdc++.so.3 => 在 CloudLinux 上找不到,沒有超級使用者權限,似乎在 chroot 中。
我正在嘗試在具有 x86_64 架構的 CloudLinux 機器上安裝 Linux x64 BOINC 命令行界面客戶端。當我嘗試執行執行檔時,出現錯誤:
./boinc:載入共享庫時出錯:libstdc++.so.3:無法打開共享對象文件:沒有這樣的文件或目錄
當我對 boinc 執行檔執行 ldd 時,我發現:
libstdc++.so.3 => not found
當我 yum install compat-libstdc++-33 我得到
CRITICAL:yum.cli:Config Error: Error access file for config file:///etc/yum.conf
我無權訪問任何形式的超級使用者權限,我的帳戶很可能位於 chroot 中。
如何讓我的客戶端執行?
libstdc++ 3
不再是預設設置libstdc++
。您仍然可以安裝它,但最好使用您的發行版包 util 來安裝它。我假設您的 BOINC 客戶端適用於您的 Arch,x86_64,而不是為 x86 編譯的。這種差異在解決依賴性問題方面很重要。考慮到您使用的是普通使用者帳戶,理論上您應該能夠在本地執行此操作。我不確定哪個版本的 CloudLinux,但現在我假設它是 6。
## Set up Lib Path Environment cd ~ mkdir lib echo "export LD_LIBRARY_PATH=~/lib" >> .profile ## Make tmp folder, download package in it mkdir tmp cd tmp wget http://64.131.90.31/PSA_10.4.4/thirdparty-rpm-CloudLinux-6-x86_64/compat-libstdc++-296-2.96-144.el6.i686.rpm ## Extract package files, get the parts we want rpm2cpio compat-libstdc++-296-2.96-144.el6.i686.rpm | cpio -idmv cp usr/lib/libstdc++-* ../lib ## Go in our lib folder, and create symlinks to the lib ldd told you was missing cd ../lib ln -s libstdc++-3-libc6.2-2-2.10.0.so libstdc++.so.3 ## Go back to home, and source our profile changes. cd ~ . .profile
完成所有這些操作後,再次嘗試執行您的客戶端。您可能需要註銷並重新登錄,告訴我之後發生了什麼!