基本的に2つの質問があります。
- Linuxに32ビットPythonと64ビットPythonをインストールする方法は?
- 次の試みの失敗によって破損したシステムを回復する方法は?
私はLinux Mint 16に32ビットPythonと64ビットPythonをインストールしてみました。私が望んでいたほど単純ではありませんでしたが(似たようなものが良いsudo apt-get install python32
でしょう)、インターネット検索を行った後、Python 2.7.6をダウンロードして次のことを行いました。
sudo apt-get install ia32-libs gcc-multilib checkinstall
CC="gcc -m32" LDFLAGS="-L/lib32 -L/usr/lib32 -Lpwd/lib32 -Wl,-rpath,/lib32 -Wl,-rpath,/usr/lib32" ./configure --prefix=/opt/pym32
make
sudo checkinstall
おそらく、次のように32ビットまたは64ビット(デフォルト)を実行できます。
python -c 'import sys; print sys.maxint'
/opt/pym32/bin/python -c 'import sys; print sys.maxint'
...しかし/opt/pym32/
生成されませんでした。悪いことに、私のシステムは今や29の破損した依存関係を報告しています。この問題を解決するために、aptitudeは必要な複数のパッケージを削除し、不要な複数のパッケージをインストールすることを提案しました。
私はcheckinstallを使用しましたが、代わりにmake install
問題が発生した場合は元に戻したり削除したりできましたが、Pythonのアンインストール/再インストールは破損した依存関係のために機能しません。この問題から逃れる方法はありますか?
答え1
64ビットプラットフォームの32ビットパッケージ
まず、パッケージマネージャがさまざまなアーキテクチャのパッケージをインストールできるようにする必要があります。しかし、誰ですか? Aptwget
はとの簡単な組み合わせですdpkg
。本当のパッケージマネージャは、dpkg
実際のパッケージタスクを処理する低レベルのインフラストラクチャを提供することです*.deb
。
それでは、特定のケースで利用可能なアーキテクチャを見てみましょう。
dpkg-architecture --list-known | grep -E "amd64|i386"
または
dpkg-architecture --list-known | ack "amd64|i386"
ご覧のように、私たちの場合、スキーマはamd64
andですi386
。これで、パッケージマネージャがi386
パッケージをインストールできるようになります。
sudo dpkg --add-architecture i386
これでパッケージをインストールできます。
sudo aptitude update && sudo aptitude install python2.7:i386
通常、最初のi386
パッケージをインストールすると、多数の依存パッケージがインストールされます。たとえば、私Debian x86_64 GNU/Linux テスト (拡張)インストールskype
(によって異なりますlibc6:i386
)のため、以下がインストールされます。189コンボ:
dpkg --get-selections | ack i386 -c
問題は、python2.7:i386
このプログラムと競合し、python2.7
多くのパッケージがそれに依存していることですpython2.7
。したがって、python2.7:i386
すべてのグラフィカル環境を削除しないとインストールできません。
破損した依存関係の修正
これはとても簡単です。
sudo apt-get install -f && sudo dpkg --configure -a