依存関係の問題を引き起こすことなく、64ビットシステムに32ビットのプロプライエタリdebをインストールするにはどうすればよいですか?


15

Guitar Proは64ビットをサポートしていませんが、このコマンドで動作するようになりました

jeggy@jeggy-XPS:~$ sudo dpkg --force-architecture -i GuitarPro6-rev9063.deb
[sudo] password for jeggy: 
Selecting previously unselected package guitarpro6:i386.
(Reading database ... 285729 files and directories currently installed.)
Unpacking guitarpro6:i386 (from GuitarPro6-rev9063.deb) ...
dpkg: dependency problems prevent configuration of guitarpro6:i386:
 guitarpro6:i386 depends on gksu.
dpkg: error processing guitarpro6:i386 (--install):
 dependency problems - leaving unconfigured
Processing triggers for bamfdaemon ...
Rebuilding /usr/share/applications/bamf.index...
Processing triggers for desktop-file-utils ...
Processing triggers for gnome-menus ...
Errors were encountered while processing:
 guitarpro6:i386

そして、私はそのエラーを取得した後でもプログラムは完全に正常に動作し、システムへのPPAの更新と追加はうまく機能しますが、他のソフトウェアをインストールしようとするとこのエラーが発生します:

jeggy@jeggy-XPS:~$ sudo apt-get install elinks
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:
 elinks : Depends: libfsplib0 (>= 0.9) but it is not going to be installed
          Depends: liblua50 (>= 5.0.3) but it is not going to be installed
          Depends: liblualib50 (>= 5.0.3) but it is not going to be installed
          Depends: libtre5 but it is not going to be installed
          Depends: elinks-data (= 0.12~pre5-7ubuntu1) but it is not going to be installed
 guitarpro6:i386 : Depends: gksu:i386 but it is not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

そして、私が「apt-get -f install」と書くたびに、私はこれを取得します

jeggy@jeggy-XPS:~$ sudo apt-get -f install
[sudo] password for jeggy: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Correcting dependencies... Done
The following packages were automatically installed and are no longer required:
  dconf-gsettings-backend:i386 python-levenshtein python-indicate libav-tools libstartup-notification0:i386
  libxmuu1:i386 libavfilter-extra-2 libbabl-0.0-0 libgegl-0.0-0 libgconf2-4:i386 python-vobject libgtk-3-0:i386
  libpam-cap:i386 python-utidylib libdconf0:i386 python-iniparse python-xmpp libpam-gnome-keyring:i386
  libxcb-util0:i386 python-farstream
Use 'apt-get autoremove' to remove them.
The following packages will be REMOVED:
  guitarpro6:i386
0 upgraded, 0 newly installed, 1 to remove and 7 not upgraded.
1 not fully installed or removed.
After this operation, 84,0 MB disk space will be freed.
Do you want to continue [Y/n]? y
(Reading database ... 286979 files and directories currently installed.)
Removing guitarpro6:i386 ...
dpkg: warning: while removing guitarpro6:i386, directory '/opt/GuitarPro6/updater' not empty so not removed.
dpkg: warning: while removing guitarpro6:i386, directory '/opt/GuitarPro6/Data/Soundbanks' not empty so not removed.
Processing triggers for bamfdaemon ...
Rebuilding /usr/share/applications/bamf.index...
Processing triggers for desktop-file-utils ...
Processing triggers for gnome-menus ...

そして、Guitar Proが削除されました。
Guitar Proをインストールし、その後でも他のソフトウェアをインストールできるようにするにはどうすればよいですか?

回答:


30

警告:

GuitarPro DEBはされて危険なパッケージ!

  • 64ビットシステムでは、apt-get -f installインストールしようとした後に、Ubuntuのインストールを台無しにする可能性がある次のシステムクリティカルパッケージapt-get削除する必要があります。

    次のパッケージは削除されます:
     gksu guitarpro6:i386 libgksu2-0 libpam-gnome-keyring  sudo ubuntu-desktop
    ubuntu-minimal update-manager update-notifier xauth xinit  xorg
  • 須藤更新マネージャー ?? バツ!開発者は何を考えていますか?!またapt-get、i386パッケージが何もインストールされていないのにインストールされていると考えられます。完全な血みどろのペーストビンです。


GuitarPro apt-getを削除せずに安全にインストールする

  • 上記の動作は、debのgksu:i386(グラフィカルなルートの昇格パッケージである)への馬鹿げた依存関係に起因すると考えています。
  • 残念ながら、これをインストールするための唯一の安全な方法及びませんが対処しなければならないapt-getことです泣き言s」は手動でそれとその依存関係をインストールします。方法は次のとおりです。

依存関係を持つバイナリi386 debを手動で調べて安全にインストールする方法

  • まず、現在インストールされているハーフインストールされたパッケージを削除します sudo dpkg --remove guitarpro:i386
  • 次に、debファイルが保存されているディレクトリに移動します。入力しやすいように、短いシンボリックリンクを作成しましょうgp6-full-linux-demo-r11100.deb
    • ln -s gp6-full-linux-demo-r11100.deb gp6.deb

1. debのアーキテクチャと依存関係を調べる

最初に、インストールせずにdebの依存関係を調べます。

  • dpkg-deb -I gp6.deb 私たちに見せて下さい:

     新しいdebianパッケージ、バージョン2.0。
    サイズ172147458バイト:コントロールアーカイブ= 75020バイト。
     375バイト、10行が
    335109バイト、2770行を制御するmd5sums
    パッケージ:GuitarPro6 バージョン:6.1.3 セクション:non-free / audio 優先度:オプション アーキテクチャ:i386 依存:libc6(> = 2.1.3)、libstdc ++ 6、libasound2、libxml2、libxslt1.1、libportaudio0、libportaudio2、libglu1-mesa、gksu、libssl0.9.8 設置サイズ:222632 メンテナー:Arobas Music 説明:http : //www.guitar-pro.com Guitar Pro 6、Linuxバージョン。

  • したがって、これはi386アプリケーションであり、その依存関係もすべてi386になります。

  • まず最初に行うには、インストールされia32-libs、あなたがまだの場合は、i386の互換パッケージを:
    • sudo apt-get install ia32-libs
  • あとで、パッケージの依存関係をテキストファイルにコピーして貼り付けましょう。

2. debをtarアーカイブに「抽出」し、その内容を調べます

  • レッツ・エキス今tarアーカイブへのDEB我々はそれをインストールすることなく、その内容を調べることができるように:
    • dpkg-deb --fsys-tarfile gp6.deb > gp6.tar
  • File Manager(Nautilus)gp6.tar開き、右クリックして[ アーカイブマウンターで開く ]を選択して、アーカイブとしてマウントします。その後gp6.tar、左のサイドバーの下部に追加アイコンが表示され、その横にイジェクトアイコンが表示されます。

    ここに画像の説明を入力してください

  • ファイルマネージャーの[表示]メニューに移動し、サイドバーを[ 場所 ]ではなく[ ツリービュー]オプションに変更します。

    ここに画像の説明を入力してください

  • 次にgp6.tar、三角形をクリックしてサイドバーのツリーを展開します。ファイルのフォルダー構造が表示されるまで、各レベルで繰り返します。

    ここに画像の説明を入力してください

  • 構造から、我々はプログラムのファイルを2つの場所に入ることを確認:/opt/usr/share

    • 侵入するもの/optはすべて自己完結型であり、システム上の他の何かには影響しません。
    • /usr/shareこれには、無害なアイコン/ビットマップのみが含まれていることがわかります。

3.安全であれば、tarファイルを抽出してプログラムを「インストール」します

  • ターミナルに戻り、ダウンロードしたdeb / tarファイルが含まれているディレクトリにいることを確認します。次に入力:

    sudo tar -C / -xvf gp6.tar
    
  • これにより、適切な場所にプログラムファイルが抽出され、ファイル名と進行状況が表示されます。(サンプル出力

    • -Cスイッチが伝えtarルートディレクトリにこの操作の相対的ではなく、カレントディレクトリを実行します。

4.で依存関係が欠落しているものlddを見つけ、それらをインストールし、ロックンロールします。

  • /opt/GuitarPro6ファイルマネージャーでフォルダーを開きます。

    ここに画像の説明を入力してください

    • 実行可能ファイルの名前はGuitarPro(菱形の「歯車」アイコン付き)でありlib-xxxx、フォルダーには多くのファイルが含まれています。
    • これは、バイナリのみのプログラムでは正常です。特定のディストリビューションのリポジトリから入手できない場合があるため、必要な特定のライブラリのバージョンを含めようとします。
  • これらの含まれているライブラリとia32-libsパッケージとともに、ほとんどの32ビットの依存関係がインストールされている必要があります。盲目的に依存関係をインストールする代わりに、apt-get問題を引き起こす可能性のあるdebファイル情報で確認しましたが、実際に何か欠落しているかどうかを確認しましょう。

    • ターミナルに戻り、GuitarProディレクトリに移動します cd /opt/GuitarPro6

を使用して ldd

  • を入力ldd GuitarPro | grep foundすると、出力はlibportaudio.so.2 => not found

    • lddプログラムの依存関係(共有ライブラリ)と、それらがシステム上に存在するかどうかを出力します。GuitarProの完全な出力は次のようになります。
    • 生活を楽にするために、を介して存在しないものをフィルタリングするだけgrep foundです。
  • ここでは、libportaudio2ライブラリのみが欠落しています。しかし、依存関係はlibportaudio 0言っていますか?(ステップ1を参照)どちらですか?

    • apt-cache search libportaudio端末から使用可能なバージョンを検索してみましょう。
    • これは libportaudio2libportaudio0パッケージの両方が利用可能であることを示しています。最初に 2をインストールしましょう
      sudo apt-get install libportaudio2 :i386
    • :i386の部分がある非常に重要な私たちのプログラムは、32ビットであるため、。一部のライブラリは32ビット版と64ビット版の両方で同時にインストールできないため、apt-get置換/削除libportaudio2および/または他のファイルを要求された場合、それは問題ありません。
  • 最後にもう一度依存関係をダブルチェックしましょう:何もldd GuitarPro6 | grep found提供しませ(それが私たちの望みです!)

    • エラーが発生した場合、./GuitarPro: /opt/GuitarPro6/./libz.so.1: version ZLIB_1.2.3.3 not found (required by /usr/lib/i386-linux-gnu/libxml2.so.2)これはGuitar Proが間違ったバージョンのlibzを使用していることを意味し、GuitarPro6ディレクトリからlibz.so.1ファイルを削除することでこれを修正します。
      sudo rm libz.so.1
      Guitar Proはシステムのlibzバージョンにフォールバックします。
  • ターミナルを終了/opt/GuitarPro6し、ファイルマネージャーのフォルダーに戻ります。GuitarProをダブルクリックして...

    ここに画像の説明を入力してください

  • ファイルマネージャからtarファイルを削除して、ダウンロードフォルダをクリーンアップします。

5.ランチャーのショートカットは既に追加されています

  • パッケージにGuitarPro6.desktopはに抽出されたショートカットが既に含まれているため、/usr/share/applications手動で作成する必要はありません。ランチャーにあります:

    ここに画像の説明を入力してください


ええ、私が最後にldd GuitarPro6を使用したときを除いて、すべてがうまくいきました。grepは、それが私に応答を与えたのを見つけました:./GuitarPro:/opt/GuitarPro6/./libz.so.1:バージョン `ZLIB_1.2.3.3 'が見つかりません(/ usr / lib / i386-linux-gnu / libxml2で必要です) .so.2)
Shahe Tajiryan

私は別のコンピュータ(12.10 64bit版)でこれをインストールしようとした、と私は他のエラーに遭遇したが、これはそれを修正:bit.ly/X7nvJ5を。他の誰かが何らかの問題に遭遇した場合、ここでそれを共有したかった
-Jeggy

なんて素晴らしい答えでしょう。これは、Ubuntu 14.10 64ビットで完全に機能しました。私は複数回upvoteことがしたい... FYI、私はまたしなければならなかったsudo apt-get install libssl0.9.8:i386のほかにlibportaudio2:i386
friederbluemle

14.04
caisara

1

私は何かを試してみて、動作するようになりました!

  1. 「/ opt / GuitarPro6」をどこかにコピーしました。

  2. 私がやったsudo apt-get -f installギターProを削除します。

  3. フォルダをコピーして、/opt/GuitarPro6そこにあるすべてのものを置き換えました。

  4. 次のように追加のパッケージをインストールしました。

    sudo apt-get install dconf-gsettings-backend python-levenshtein python-indicate libav-tools libstartup-notification0 libxmuu1 libavfilter-extra-2 libbabl-0.0-0 libgegl-0.0-0 libgconf2-4 python-vobject libgtk-3-0 libpam-cap python-utidylib libdconf0 python-iniparse python-xmpp libpam-gnome-keyring libxcb-util0 python-farstream
    
  5. この画像GuitarProアイコンをダウンロードして保存した/opt/GuitarPro6/icon.pngので、独自の.desktopファイルを作成するための画像を作成できます。

  6. 私は.desktopファイルを作成しましたsudo gedit

    #!/usr/bin/env xdg-open
    
    [Desktop Entry]
    Type=Application
    Name=Guitar Pro 6
    Comment=Guitar Pro 6
    Icon=/opt/GuitarPro6/icon.png
    Exec=sh /opt/GuitarPro6/gp-launcher.sh
    Terminal=false
    Categories=Audio
    

    このファイル/usr/share/applicationsをという名前で保存しましたGuitarPro6.desktop

これですべてが機能し、Guitar Proがすぐに見つかります。


1
それは恐ろしい解決策です。
tgm4883

1
より良い解決策はありますか?他の人が答えたすべてを試してみました。もっと良いものを知っていますか?これは実際にうまく機能します。
ジェギー

Guitar Proのすべての依存関係をインストールしましたか?
tgm4883

よく今私はこれをやったsudo apt-get install dconf-gsettings-backend python-levenshtein python-indicate libav-tools libstartup-notification0 libxmuu1 libavfilter-extra-2 libbabl-0.0-0 libgegl-0.0-0 libgconf2-4 python-vobject libgtk-3-0 libpam-cap python-utidylib libdconf0 python-iniparse python-xmpp libpam-gnome-keyring libxcb-util0 python-farstream。そしてそれは同じようにうまく機能します。
ジェギー

将来、実行しないでくださいsudo geditgksu geditまたはgksudo gedit代わりに使用する必要があります。アプリケーションにユーザーごとの構成ファイルがある場合、rootplain を使用してグラフィカルプログラムを実行sudoすると、これらのプログラムが非rootユーザーのために混乱する可能性があります
エリアケイガン

1

私も過去数日間これに苦労してきました。最も良い方法は、Windows実行可能ファイルをwineの下で使用することです。もっとしっかりしているようです。


0

質問に答えるには、apt-get -f installソフトウェアの削除を停止する--no-removeには、実行するコマンドに追加する必要があります。これにより、何かが削除され、ソフトウェアが削除されない場合、apt-getの実行が直ちに中止されます。

ただし、おそらくあなたが探しているのは、システムを正常に実行し、しかもそのソフトウェアをインストールする方法です。あなたがする必要があるのは、dpkgでパッケージのインストールを強制するときからの出力を見て、何が失敗しているかを見てから、その依存関係を使用してインストールすることです

apt-get install package-name

あなたの場合、それはgksu(具体的にはgksu)です。ここで、gksuをインストールしようとすると、インストールする必要がある依存関係もあることがわかります。32ビットパッケージのインストールを強制するため、上記と同じコマンドを使用してこれらの依存関係を手動でインストールする必要があります。


0

LinuxMint 14 32ビットでgp6をインストールし、アップデーターを実行し、zlib.so1.2.27を/ opt / GuitarProにコピーしてzlibの問題を修正し、zlib.so.1に名前を変更して、gksuとその依存関係をインストールし、アップデーターを再度実行しましたすべてを最新の状態にするため。その後、Dolphinでfish:// username @ mymachineIP / optを介して64ビットLinuxを3s-Bit Linuxに接続し、GuitarPro6ディレクトリ全体を64ビットLinuxのホームディレクトリにコピーし、そこから/ optにコピーしました。動作します。


-2

これを試して:

http://www6.guitar-pro.com/en/index.php?pg=.debファイルをダウンロードしますが、インストールはしません。

次に、getlibsをダウンロードしてインストールします

sudo apt-get install libportaudio0
getlibs -l libportaudio.so.2
dpkg -i –force-all /path/to/GuitarPro6Demo2.deb

最後に、(エラーを無視して)それを起動します:

/opt/GuitarPro6/gp-launcher.sh

それは私が前にやったよりもうまく機能しませんでした:(
Jeggy
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.