FedoraのXCOM2:libcrypto.so.1.0.0が見つかりません。

FedoraのXCOM2:libcrypto.so.1.0.0が見つかりません。

Steam経由でFedora 26に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_64ELFクラスエラーについて文句を言いました(私のバージョンはi686用の32ビットlibのようです?!)。

/lib最初にlibcryptoの32ビットバージョンを使用する理由とXCOM2が機能する方法は?私はFedoraに初めて触れていて、この問題を自分で見つけようとしていますが、どうすればよいのかわかりません。まずは本当にありがとうございました!

ベストアンサー1

まず、

ldd ./XCOM2

バイナリをリンクしたいライブラリが表示されます。どのライブラリが見つからないかを確認できます。

次のコマンドを使用して、共有ライブラリのアーキテクチャを確認できます。

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

i386 ライブラリまたは amd64 ライブラリであるかどうかを通知します。バイナリも同じですXCOM2

スキーマが一致する必要があります。ldd存在するものと存在しないことが示されましたが。

ほとんどのディストリビューションは、少なくとも限られたマルチアーキテクチャサポートを提供します。つまり、システムは同時に複数のアーキテクチャのライブラリとバイナリを持つことができます。

見つからないライブラリを含むパッケージを見つけます(これはrpmベースの展開でこのツールを使用するscoutか、debベースの展開を使用して実行できますapt-file)。これをインストールします(rpmで、yumdebianで、使用apt-get)。

そのライブラリがディストリビューションにない場合は、外部ソースからインポートする必要があります。しかし、オペレーティングシステムライブラリは単一のバイナリのため役に立ちません。

ほとんどの場合、これらのライブラリは同じディストリビューションの異なるバージョンに存在します(Debianでは次のことができます)。http://packages.debian.org、他のディストリビューションの場合はわかりません)。パッケージをダウンロードして手動で解凍し(rpmでは、コマンドはrpm2cpio something.rpm|cpio -i -ddebian dpkg -x something.deb; tar -Jxvf data.tar.xz:)必要なライブラリファイルを指定されたディレクトリにコピーします。

バイナリファイルにプレフィックスを追加する

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

まずXCOM2、この追加ディレクトリを共有ライブラリ検索パスに提供できます。

おすすめ記事