Fedora

Fedora 上的 XCOM2:找不到 libcrypto.so.1.0.0

  • August 31, 2017

我已經在 Fedora 26 上通過 Steam 安裝了 XCOM2,但它沒有用。我手動執行了安裝的二進製文件並得到了錯誤:

./XCOM2: error while loading shared libraries: libcrypto.so.1.0.0: cannot open shared object file: No such file or directory

然後,我嘗試手動將系統(即 x64)版本連結到其中,~/.local/share/Steam/steamapps/common/XCOM 2/lib/x86_64但隨後它抱怨 ELF 類錯誤(看起來我的版本是針對 i686 的 32 位庫?!)。

為什麼我/lib首先有一個 32 位版本的 libcrypto 以及(更相關地)我如何讓 XCOM2 工作?我對 Fedora 比較陌生,並試圖自己解決這個問題,但我不確定如何繼續。首先十分感謝!

首先,一個

ldd ./XCOM2

將顯示,您的二進製文件要連結到哪些庫。您會看到,哪些庫無法找到。

您可以使用以下命令檢查共享庫的體系結構

file -szL /lib/libsomething.so.a.b.c

它會說,如果它是 i386 或 amd64 庫。你的XCOM2二進製文件也是如此。

架構應該匹配。雖然ldd已經顯示,究竟什麼存在,什麼不存在。

大多數發行版至少具有有限的多架構支持,這意味著您的系統可以同時擁有用於多種架構的庫和二進製文件。

找到包含缺失庫的包(在基於 rpm 的發行版上,可以使用該scout工具完成,或者基於 deb 的發行版使用apt-file)。安裝它們(在 rpm 上,使用yum,在 debian 上,apt-get)。

如果您的發行版中不存在給定的庫,那麼您必須從外部來源獲取它們。但是,因為單個二進製文件而作業系統庫是沒有用的。

大多數情況下,這些庫存在於同一發行版的不同版本中(在 debian 上,您可以在http://packages.debian.org上找到它,對於我不知道的其他發行版)。下載軟體包,手動解壓(在 rpm 上,命令是:rpm2cpio something.rpm|cpio -i -d,在 debian 上:)dpkg -x something.deb; tar -Jxvf data.tar.xz,將所需的庫文件複製到給定目錄中。

用前綴二進制

LD_LIBRARY_PATH=/here/are/my/additional/libs ./XCOM2

您可以首先XCOM2將此附加目錄提供給共享庫搜尋路徑。

引用自:https://unix.stackexchange.com/questions/389562