web-dev-qa-db-ja.com

64ビットubuntuに32ビットdebパッケージをインストールする方法は?

Ubuntu 11.10 64ビットがインストールされており、32ビットdebパッケージをインストールする必要があります。他の32ビットライブラリに依存します。 getlibsでこれを克服します。

Sudo getlibs -i ./hp-netconnect_1.2-12_i386.deb 

パッケージは正常にインストールされ、使用できますが、apt-getでは何もインストールできません。

ytaras@bueno:~/Downloads$ Sudo apt-get install bison-doc 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
 hp-netconnect:i386 : Depends: openssl:i386 but it is not going to be installed
                      Depends: procps:i386 but it is not going to be installed
                      Depends: zenity:i386 but it is not going to be installed
                      Depends: Sun-Java6-jre:i386 but it is not installable or
                               Sun-Java5-jre:i386 but it is not installable
                      Recommends: Sun-Java6-plugin:i386 but it is not installable
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

「apt-get -f install」を実行すると、hp-netconnectパッケージが削除されるだけです。何かをインストールして後で再インストールするたびに、このパッケージを「apt-get -f install」でアンインストールする必要があります。

5
Yura Taras

Multiarchでは、getlibsは必要ありません。依存関係は「正しく機能する」はずです。ただし、ここでの問題は、opensslprocpszenity、およびJavaがMultiArch: foreignとしてまだマークされていないことです。つまり、AMD64バージョンはおそらくこのスクリプトで動作するでしょうが、dpkgはそれを見ることができません。

これを回避する最善の方法は、おそらくその.debを編集し、問題のある依存関係を削除することです。誰か スクリプトを書いた それを助けるために。

1
tumbleweed

32ビットパッケージをubuntuにインストールするには、-ignore-dependsフラグを付けてdpkgを使用します。その場合、このパッケージの依存関係は無視する必要があります。

だから私は試してみます:

Sudo dpkg -i --force-architecture --ignore-depends hp-netconnect_1.2-12_i386.deb

または、attach --ignore-missingフラグを使用して、aptで欠落している依存関係を無視することもできます。

5
Michael K