如何在 Kubuntu 15.10 64 位上安装 Guitar Pro 6?

Tec*_*Mod 3 64-bit package-management kubuntu multiarch software-installation

首先我遵循了这个描述:

通过破解 .deb 文件在 saucy 中安装 gp6

我认为它已经过时了,因为它不能正常工作。重建包并尝试安装后

sudo dpkg -i gp6-manipulated.deb
Run Code Online (Sandbox Code Playgroud)

给出以下

Entpacken von guitarpro6:i386 (6.1.9) ...
dpkg: Abhängigkeitsprobleme verhindern Konfiguration von guitarpro6:i386:
 guitarpro6:i386 hängt ab von libasound2.
 guitarpro6:i386 hängt ab von libc6 (>= 2.1.3).
 guitarpro6:i386 hängt ab von libglu1-mesa.
 guitarpro6:i386 hängt ab von libportaudio0.
 guitarpro6:i386 hängt ab von libportaudio2.
 guitarpro6:i386 hängt ab von libssl0.9.8.
 guitarpro6:i386 hängt ab von libstdc++6.
 guitarpro6:i386 hängt ab von libxml2.
 guitarpro6:i386 hängt ab von libxslt1.1.
 guitarpro6:i386 hängt ab von zlib1g.

dpkg: Fehler beim Bearbeiten des Paketes guitarpro6:i386 (--install):
 Abhängigkeitsprobleme - verbleibt unkonfiguriert
Trigger für mime-support (3.58ubuntu1) werden verarbeitet ...
Fehler traten auf beim Bearbeiten von:
 guitarpro6:i386
techmod@buildr:~/Downloads$ 
Run Code Online (Sandbox Code Playgroud)

例如,尝试将它们安装为 i386 版本

sudo apt-get install libc6:i368
Run Code Online (Sandbox Code Playgroud)

总是回复,找不到包裹(不管是哪一个)

试图通过使用突触来解决这个问题最终会导致突触告诉我有一个破损的包裹,我应该修理它。作为修复的结果,synaptic 删除了有问题的包并安装了很多东西。不幸的是,该软件包没有安装后给出与上述相同的输出。

然后我尝试了这个解决方案:

使用 ldd 安装 gp6

但是使用命令

sudo dpkg --force-architecture -i gp6-manipulated.deb
Run Code Online (Sandbox Code Playgroud)

最终遇到了我以前遇到的相同问题。

当我尝试下一个建议(安装 ia32-libs)时,我发现它们被lib32z1lib32ncurses5取代。安装方式

sudo apt-get install lib32z1 lib32ncurses5
Run Code Online (Sandbox Code Playgroud)

返回以下内容:

Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.       
Statusinformationen werden eingelesen.... Fertig
Probieren Sie »apt-get -f install«, um dies zu korrigieren:
Die folgenden Pakete haben unerfüllte Abhängigkeiten:
 guitarpro6:i386 : Hängt ab von: libasound2:i386
 Hängt ab von: libc6:i386 (>= 2.1.3) soll aber nicht installiert werden
 Hängt ab von: libglu1-mesa:i386 soll aber nicht installiert werden
 Hängt ab von: libportaudio0:i386 ist aber nicht installierbar
 Hängt ab von: libportaudio2:i386 soll aber nicht installiert werden
 Hängt ab von: libssl0.9.8:i386 ist aber nicht installierbar
 Hängt ab von: libstdc++6:i386 soll aber nicht installiert werden
 Hängt ab von: libxml2:i386 soll aber nicht installiert werden
 Hängt ab von: libxslt1.1:i386 soll aber nicht installiert werden
 Hängt ab von: zlib1g:i386 soll aber nicht installiert werden
 lib32ncurses5 : Hängt ab von: lib32tinfo5 5.9+20150516-2ubuntu1) soll aber nicht installiert werden
 Hängt ab von: libc6-i386 (>= 2.4) soll aber nicht installiert werden
 lib32z1 : Hängt ab von: libc6-i386 (>= 2.4) soll aber nicht installiert werden

E: Unerfüllte Abhängigkeiten. Versuchen Sie **»apt-get -f install«** ohne Angabe eines Pakets (oder geben Sie eine Lösung an).
techmod@buildr:~$ 
Run Code Online (Sandbox Code Playgroud)

如果我想解决这个问题

sudo apt-get -f install
Run Code Online (Sandbox Code Playgroud)

它会破坏安装。

按照步骤 2 和 3 之后,我有点卡住了,因为将目录更改为 /opt/GuitarPro6 并使用

ldd GuitarPro | grep found
Run Code Online (Sandbox Code Playgroud)

不会返回任何内容,但不会启动程序。它只是出现在面板中,然后立即消失。

在早期的尝试中,该命令根据 libc 等显示了许多依赖项。

欢迎任何帮助。如果有用的话

ls
Run Code Online (Sandbox Code Playgroud)

给出以下内容:

techmod@buildr:/opt/GuitarPro6$ ls
Data                                         libprofiler.so
gp6-linux.checklist                          libQtCore.so.4
GPBankInstaller                              libQtDBus.so.4
GPConverter                                  libQtGui.so.4
GPInstaller                                  libQtNetwork.so.4
GPUpdater                                    libQtOpenGL.so.4
GuitarPro                                    libQtSvg.so.4
launcher.sh                                  libQtWebKit.so.4
libboost_date_time-gcc43-mt-1_39.so.1.39.0   libQtXmlPatterns.so.4
libboost_filesystem-gcc43-mt-1_39.so.1.39.0  libQtXml.so.4
libboost_regex-gcc43-mt-1_39.so.1.39.0       libregister.so
libboost_system-gcc43-mt-1_39.so.1.39.0      libRSEAudioCore.so
libboost_thread-gcc43-mt-1_39.so.1.39.0      libRSECore.so
libchunk.so                                  libthread.so
libexception.so                              libtimer.so
libfactory.so                                libvariant.so
libfilesystem.so                             libWavFile.so
libGPCore.so                                 libxml.so
libmemory.so                                 libZip.so
libmmap.so                                   Presets
libobject.so                                                        SoundbanksVolumeChangesSettings.ini
libOverLoud.so                               updater
libphonon.so.4                               xsl
libPickupModeling.so
techmod@buildr:/opt/GuitarPro6$ 
Run Code Online (Sandbox Code Playgroud)

编辑:我对我的安装进行了一些调查,发现我必须通过突触安装软件包。不管上面提到的破坏安装。

我做了一个 .tar-archive

dpkg-deb --fsys-tarfile gp6-manipulated.deb > gp6-man.tar
Run Code Online (Sandbox Code Playgroud)

并安装它

sudo tar -C / -xvf gp6-man.tar
Run Code Online (Sandbox Code Playgroud)

当我更改为 /opt/GuitarPro6 并使用

ldd GuitarPro | grep found
Run Code Online (Sandbox Code Playgroud)

我得到以下信息:

techmod@buildr:/opt/GuitarPro6$ ldd GuitarPro | grep found
    libssl.so.0.9.8 => not found
    libcrypto.so.0.9.8 => not found
    libpulse.so.0 => not found
    libpulse-simple.so.0 => not found
    libXrender.so.1 => not found
    libvorbis.so.0 => not found
    libgthread-2.0.so.0 => not found
    libglib-2.0.so.0 => not found
    libgthread-2.0.so.0 => not found
    libglib-2.0.so.0 => not found
    libpng12.so.0 => not found
    libfreetype.so.6 => not found
    libgobject-2.0.so.0 => not found
    libSM.so.6 => not found
    libICE.so.6 => not found
    libXrender.so.1 => not found
    libfontconfig.so.1 => not found
    libfreetype.so.6 => not found
    libXrender.so.1 => not found
    libfontconfig.so.1 => not found
    libXrender.so.1 => not found
    libfontconfig.so.1 => not found
    libfreetype.so.6 => not found
techmod@buildr:/opt/GuitarPro6$ sudo tar -C / -xvf gp6.tar
Run Code Online (Sandbox Code Playgroud)

EDIT2:我设法安装了所需的所有依赖项并使其运行,并且能够注册我的副本。不幸的是,该过程停止并抛出了这个:

techmod@buildr:/opt/GuitarPro6$ ./GuitarPro
ALSA lib conf.c:3325:(snd_config_hooks_call) Cannot open shared   library     libasound_module_conf_pulse.so
ALSA lib seq.c:935:(snd_seq_open_noupdate) Unknown SEQ default

RtMidiOut::initialize: error creating ALSA sequencer client object.

terminate called after throwing an instance of 'rtmidi::RtError'
Abgebrochen (Speicherabzug geschrieben)
techmod@buildr:/opt/GuitarPro6$ 
Run Code Online (Sandbox Code Playgroud)

Tec*_*Mod 8

正如我所说,这里是我上面问题的答案:

第1步

首先,我检查了我的系统架构:

dpkg --print-architecture
Run Code Online (Sandbox Code Playgroud)

Bash 提供以下内容:

amd64
Run Code Online (Sandbox Code Playgroud)

下一步是确定可能支持哪些其他架构:

dpkg --print-foreign-architectures
Run Code Online (Sandbox Code Playgroud)

这将打印:

i386
Run Code Online (Sandbox Code Playgroud)

现在只需添加新架构:

sudo dpkg --add-architecture i386 && sudo apt-get update
Run Code Online (Sandbox Code Playgroud)

第2步

此步骤对应于此答案中给出的步骤 2+3 和 4:

如何在 64 位系统上安装 32 位专有 deb 而不会导致依赖性问题?

打开您的 GuitarPro 6 *.deb-archive 并将其设为 *.tar-archive:

dpkg-deb --fsys-tarfile whatever_your_gp6_package_is_called.deb > whatever.tar
Run Code Online (Sandbox Code Playgroud)

并通过键入自动将其解压缩到适当的位置

sudo tar -C / -xvf whatever.tar
Run Code Online (Sandbox Code Playgroud)

打开bash并更改为:

/opt/GuitarPro6/
Run Code Online (Sandbox Code Playgroud)

如果您键入:

ldd GuitarPro | grep found
Run Code Online (Sandbox Code Playgroud)

bash will list all unmet dependencies which are:

  • gksu_2.0.2-9ubuntu1_i386
  • libasound2_1.0.29-0ubuntu1_i386
  • libc6_2.21-0ubuntu4_i386
  • libfontconfig1_2.11.1-0ubuntu6_i386
  • libfreetype6_2.5.2-4ubuntu2_i386
  • libglib2.0-0_2.46.1-1_i386
  • libglu1-mesa_9.0.0-2_i386
  • libice6_1.0.9-1_i386
  • libportaudio0_18.1-7.1_i386
  • libportaudio2_19+svn20140130-1build1_i386
  • libpulse0_6.0-0ubuntu13_i386
  • libpulse0_6.0-0ubuntu13_i386
  • libsm6_1.2.2-1_i386
  • libssl0.9.8_0.9.8o-7ubuntu4_i386
  • libstdc++6_5.2.1-22ubuntu2_i386
  • libstdc++6_5.2.1-22ubuntu2_i386
  • libxml2_2.9.2+zdfsg1-4_i386
  • libxrender1_0.9.9-0ubuntu1_i386
  • libxslt1.1_1.1.28-2build2_i386
  • zlib1g_1.2.8.dfsg-2ubuntu4_i386

Now head over to packages.ubuntu.com, search for them and download them. They should be installable by Qapt. Every dependency not listed here is going to be resolved automatically. There is only one exception:

  • libc6, libstdc++ and libssl won´t be installed by Qapt. Just make them a *.tar-archives and install them as mentioned above.

Check your dependencies again with:

ldd GuitarPro | grep found
Run Code Online (Sandbox Code Playgroud)

and there shouldn´t be any dependencies left.

STEP 3

Unfortunately GP6 still refuses to start. The splash will show up and crash instantly. This is due to the ALSA drivers on your system. Bash gives you this:

techmod@buildr:/opt/GuitarPro6$ ./GuitarPro
ALSA lib conf.c:3325:(snd_config_hooks_call) Cannot open shared library libasound_module_conf_pulse.so
ALSA lib seq.c:935:(snd_seq_open_noupdate) Unknown SEQ default

RtMidiOut::initialize: error creating ALSA sequencer client object.

terminate called after throwing an instance of 'rtmidi::RtError'
Abgebrochen (Speicherabzug geschrieben)
techmod@buildr:/opt/GuitarPro6$
Run Code Online (Sandbox Code Playgroud)

You can solve this easily by typing:

sudo apt-get install libasound2-plugins:i386
Run Code Online (Sandbox Code Playgroud)

STEP 4

Now your GP6 will start, but it wonj´t be able to pull updates, because the updater and the installer cannot become root (kdesudo and gksu got deleted while performing the above installation).

Simply type:

sudo apt-get install kdesudo gksu
Run Code Online (Sandbox Code Playgroud)

Now you are ready to rock! Here is some proof, that it worked.

更新 安装