最近、Ubuntu 14.04からXFCE mint Linuxに移行することにしました。 UbuntuにインストールされたゲームはMintで実行できますか?ホームフォルダを外付けハードドライブにコピーしましたが、私がインストールしたゲーム(War Thunder)をインストールし、すべてのファイルをメインハードドライブMintにコピーして貼り付けた後、Mintで実行されるかどうか疑問に思います。グラフィックドライバを再インストールする必要があることがわかります。ありがとうございます。
答え1
すべてのLinuxディストリビューションはデフォルトで同じソフトウェアを実行します。ディストリビューションは、主にインストール手順、ソフトウェアインストールメカニズム、特定のシステムコンポーネント(初期化システム、ネットワーク管理など)の選択、および特定のディストリビューションで推奨または必須のパッケージソフトウェアが異なります。
ほとんどの場合、ディストリビューションAで実行されているソフトウェアは、必要なコンポーネントがインストールされている限り、ディストリビューションBでも実行されます。ほとんどの場合図書館。デスクトップ/サーバーディストリビューションはほとんど同じライブラリセットを提供します(組み込みディストリビューションは別の話です)。ただし、デプロイメント A の特定のバージョンとデプロイメント B の特定のバージョンには、異なるバージョンのライブラリーを含めることができます。
ディストリビューション間の非互換性は、主にライブラリのバージョンが異なるために発生します。
Linux MintはUbuntuまたはDebian(UbuntuはDebianベース)に基づいていますが、常に同時にリリースされるわけではないので、あなたが持っているUbuntuのバージョンと現在持っているMintのバージョンには同じライブラリが含まれていないかもしれません。
プログラムに必要なライブラリを確認するには、実行可能ファイルを見つけて実行します。ldd
彼らに命令を出してください。次の出力が表示されます。
$ ldd /bin/ls
linux-vdso.so.1 => (0x00007fff0938a000)
libselinux.so.1 => /lib/x86_64-linux-gnu/libselinux.so.1 (0x00007ffbfb2c9000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007ffbfb0c1000)
libacl.so.1 => /lib/x86_64-linux-gnu/libacl.so.1 (0x00007ffbfaeb7000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007ffbfab2c000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007ffbfa928000)
/lib64/ld-linux-x86-64.so.2 (0x00007ffbfb525000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007ffbfa70b000)
libattr.so.1 => /lib/x86_64-linux-gnu/libattr.so.1 (0x00007ffbfa506000)
各行には、そのライブラリを含むファイルへのパスとともに、プログラムに必要なライブラリが一覧表示されます。 「見つからない」と表示された場合は、特定のライブラリがインストールされていない(または使用しているバージョンが互換性がない)ことを意味します。通常、libfoo.so.42
同じ名前のパッケージにありますが、libfoo-42
時にはライブラリが異なるようにグループ化され、ライブラリファイルとライブラリパッケージが異なる番号を持つことがあります。あなたはそれを使用することができますapt-file
このコマンドは、特定のファイル名を含むパッケージを探します。
時には正しいバージョンのライブラリAがありますが、プログラムPにはライブラリBのバージョン1用にコンパイルされたライブラリAが必要です。のみ提供します。これらの問題は、診断して解決するのがより困難になる可能性があります。プログラム(ソースコードがある場合)またはライブラリを再コンパイルすることが1つの解決策ですが、必ずしも簡単ではありません。両方のディストリビューション(またはディストリビューションの2つのバージョン)を並列に保つ別の解決策になることができます(メンテナンス作業とディスクスペースのゼロではありませんが、大きなオーバーヘッドではありません)。