Du bist nicht angemeldet.

#1 13.08.2019 21:41:39

Talrunya
Mitglied

Roccat Tools

Hallo zusammen, grade dabei meine ersten Gehversuche unter Arch zu machen.
leider bin ich dabei direkt schon auf ein Problem gestoßen.

Es ist mir einfach nicht möglich Roccat Tools über AUR zu installieren. Jedesmal bekomme ich folgende Fehlermeldung

/usr/include/pango-1.0/pango/pango-coverage.h:28:10: schwerwiegender Fehler: hb.h: Datei oder Verzeichnis nicht gefunden
   28 | #include <hb.h>
      |          ^~~~~~
Kompilierung beendet.
make[2]: *** [libroccathelper/CMakeFiles/libroccathelper.dir/build.make:136: libroccathelper/CMakeFiles/libroccathelper.dir/gtk_roccat_helper.c.o] Fehler 1
make[1]: *** [CMakeFiles/Makefile2:408: libroccathelper/CMakeFiles/libroccathelper.dir/all] Fehler 2
make: *** [Makefile:141: all] Fehler 2
==> FEHLER: Ein Fehler geschah in build().
    Breche ab...

Und da steh ich aufm Schlauch, kein Plan was die Meldung bedeutet, ausser das etwas nicht vorhanden ist. Aber leider hab ich da keine Lösung für.

Vielleicht hat ja jemand hier eine Idee und kann mir ein wenig unter die Arme greifen.

Grüße

Offline

#2 14.08.2019 08:45:58

GerBra
Mitglied

Re: Roccat Tools

Talrunya schrieb:

Hallo zusammen, grade dabei meine ersten Gehversuche unter Arch zu machen.

Herzlich willkommen!

Talrunya schrieb:

Es ist mir einfach nicht möglich Roccat Tools über AUR zu installieren. Jedesmal bekomme ich folgende Fehlermeldung

...

Und da steh ich aufm Schlauch, kein Plan was die Meldung bedeutet, ausser das etwas nicht vorhanden ist. Aber leider hab ich da keine Lösung für.

Vorneweg, da der Unterschied zur normalen Paketinstallation gerade für Neulinge nicht so offensichtlich sein mag:
a) Das AUR ist kein Paket-Repositorium("Äpp-Store") wie diejenigen, aus denen pacman seine Software installiert. Über das AUR installierst(holst) du dir die Bauanleitung(en), um lokal auf deinem Rechner ein Paket erst zu erstellen, bauen, kompilieren. Erst dieses Paket wird dann - bei Erfolg des Bauens - installiert. Siehe auch die AUR-Beschreibungen im Wiki oder oben auf dem AUR-Link.

Konkret zu deinem Fall:
Es wird versucht einen C/C++-Sourcecode zu kompilieren, in dem Prozeß wird aber ein sog. Includefile (hb.h) nicht gefunden. In Includefiles befinden sich Klartext-Informationen über Namen und Optionen von externen Funktionen (Libraries, "DLLs") die der Programmierer des aktuellen Projekts nutzen will. Ohne diese "externe" Datei bricht der Build-/Bauprozeß an obiger Stelle mit diesem Fehler ab.

An dieser Stelle wäre interessant, ob du zum Bauen einen der zahlreichen AUR-Helper nutzt oder es "klassisch" per makepkg machst. Und ein Link zum AUR-Paket wäre auch hilfreich gewesen, es gibt ja etliche roccat-Pakete(zumindest zwei Tools). Aber ich denke ich kann den Fehler aufzeigen.

Als erstes habe ich geschaut, welches Paket aus den offiziellen Repos diese fehlende Include-Datei bereitstellen würde. Ein: pacman -Fs hb.h ergibt da das Paket harfbuzz.

roccat-tools (ich beziehe mich jetzt auf dieses hier: https://aur.archlinux.org/packages/roccat-tools-full ) hat ja weitere Abhängigkeiten, siehe Dependencies bei dem vorherigen Link zum Paket. Eines davon ist ein weiteres AUR-Paket, nämlich libgaminggear. Und libgaminggear braucht zum Bauen eben das Paket harfbuzz (welches die fehlende hb.h mitbringen würde)

Die Reihenfolge beim Bauen von roccat-tools wäre also:
1. libgaminggear bauen und installieren (mit den spezifischen Abhängigkeiten)
2. roccat-tools bauen und installieren (mit den spezifischen Abhängigkeiten)

Bei der "klassischen" Methode mit makepkg hast du evtl. vergessen vorher libgaminggear zu bauen/installieren. Wenn du eines der AUR-Hilfstools benutzt: diese bieten meist den Komfort diese Abhängigkeits-Verzweigungen selbst aufzulösen, also die Reihenfolge der Abhängigkeiten für dich (mehr oder weniger transparent, automagisch!) einzuhalten.

Beim (notwendigen) Paket libgaminggear gibt es nun in den Kommentaren (es ist wichtig, diese ggf. bei Problemen zu Rate zu ziehen, lesen) einen vom 4.8.19: "Unable to build this package. Compiler can't find <hb.h>"
https://aur.archlinux.org/packages/libg … ent-702919
Also genau dein(e) Fehler(meldung). Und aus den neueren Antworten zu diesem Kommentar zeigt sich, das es daraufhin auch einen Patch gibt.

Gerade bei Benutzung eines AUR-Helpers ist es oftmals nicht unbedingt ersichtlich, bei welcher Abhängigkeit eine Fehlermeldung auftritt, v.a. wenn dann - wie du - eben nur ein Teil der Ausgabe (mit dem "Fehler") gepostet wird.
Ich würde vermuten, dein Fehler ensteht beim Bauen der Abhängigkeit libgaminggear, eben aufgrund der im Kommentar genannten Ursachen.

Abhilfe: Du solltest deine Quellen (AUR-PKGBUILDs-Datenbank) daraufhin aktualisieren, daß für libgaminggear mindest die Version 0.15.1-7 (die mit dem Patch) verwendet wird. Das - denke ich - wird dein Problem schon lösen.

(NB: Keine Zeit mehr zum Schreiben, ich hoffe das hilft dir bis dahin).

Offline

#3 14.08.2019 09:23:53

schard
Moderator

Re: Roccat Tools

Da der Fehler in einem pango source header auftaucht, hängt dies womöglich auch mit dem letzten großen pango Update zusammen.

Offline

#4 14.08.2019 11:34:41

Talrunya
Mitglied

Re: Roccat Tools

moin moin,

So Libgaminggear über AUR Build kompiliert und installiert. Harfbuzz Patch ist auch drin:

pkgname=libgaminggear
pkgver=0.15.1
pkgrel=7
pkgdesc="Provides functionality for gaming input devices"
arch=('i686' 'x86_64')
license=('GPL')
url="http://sourceforge.net/projects/libgaminggear/"
depends=('libnotify' 'libcanberra' 'gtk2' 'sqlite3>=3.7' 'python')
makedepends=('cmake>=3.0' 'doxygen' 'harfbuzz')
source=(http://downloads.sourceforge.net/project/libgaminggear/${pkgname}-${pkgver}.tar.bz2
        harfbuzz-headers.patch)
sha512sums=('a6635a74557f276ab65eda4610ba8a053fedf10f9d898a1dc875082a36b2822544f61fc7a274691673670b12d4de968aa4921d102a588f3d0777397730082990'
            'be38e9b5ee04e2425548e532b219c27f12345c5ed0c7b7e3082d2f5e5990ecf12e84daef8fa71289826f841fd57901898957f05d7da92de9b389ab2c4d2acdc0')

prepare() {
    cd "${srcdir}/${pkgname}-${pkgver}"
    patch -p1 -i "${srcdir}/harfbuzz-headers.patch"
}

build() {
    cd "${srcdir}/${pkgname}-${pkgver}"
    cmake . \
        -DINSTALL_CMAKE_MODULESDIR="/usr/share/libgaminggear/cmake/Modules" \
        -DCMAKE_INSTALL_PREFIX="/usr" \
        -DINSTALL_LIBDIR="/usr/lib"
    make
}

package() {
    cd "${srcdir}/${pkgname}-${pkgver}/"
    make DESTDIR=${pkgdir} install
}

alles ohne Fehler einwandfrei gelaufen.

Danach Roccat Tools common über AUR installiert und wieder die gleiche Fehlermeldung: Diemal packe ich die ganze Ausgabe hier rein.

Vorbereitung...
Klone roccat-tools Build-Dateien...
Überprüfe roccat-tools-common Abhängigkeiten...
Abhängigkeiten werden aufgelöst...
Interne Konflikte werden überprüft...
Edit roccat-tools build files

Vorbereitung...
Klone roccat-tools Build-Dateien...
Überprüfe roccat-tools-common Abhängigkeiten...
Abhängigkeiten werden aufgelöst...
Interne Konflikte werden überprüft...

Herunterladen von lua (5.3.5-2)...
Überprüfe Schlüsselring...
Integrität wird überprüft...
Paketdateien werden geladen...
Dateikonflikte werden überprüft...
Überprüfe verfügbaren Speicherplatz...
Installiere lua (5.3.5-2)...

Erstelle roccat-tools...
==> Erstelle Paket: roccat-tools 5.9.0-1 (Mi 14 Aug 2019 13:29:53 CEST)
==> Prüfe Laufzeit-Abhängigkeiten...
==> Prüfe Buildtime-Abhängigkeiten...
==> Empfange Quellen...
  -> Lade roccat-tools-5.9.0.tar.bz2 herunter...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed

  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100   357  100   357    0     0    789      0 --:--:-- --:--:-- --:--:--   788
100   357  100   357    0     0    789      0 --:--:-- --:--:-- --:--:--   788

100 3649k  100 3649k    0     0  3485k      0  0:00:01  0:00:01 --:--:-- 3485k
  -> 90-uinput.rules gefunden
  -> uhid.conf gefunden
==> Überprüfe source Dateien mit sha256sums...
    roccat-tools-5.9.0.tar.bz2 ... Durchgelaufen
    90-uinput.rules ... Durchgelaufen
    uhid.conf ... Durchgelaufen
==> Entferne existierendes $srcdir/ Verzeichnis...
==> Entpacke Quellen...
  -> Entpacke roccat-tools-5.9.0.tar.bz2 mit bsdtar
==> Beginne build()...
-- The C compiler identification is GNU 9.1.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- compiling for devices arvo;isku;iskufx;kiro;koneplus;konepure;konepuremilitary;konepureoptical;konextd;konextdoptical;kovaplus;kova2016;lua;nyth;pyra;ryosmk;ryosmkfx;ryostkl;savu;skeltr;sova;suora;tyon;kone
-- Installing libraries in /usr/lib
-- Installing udev rules in /usr/lib/udev/rules.d
-- Installing eventhandler plugins in /usr/lib/roccat
-- Compiler supports attribute pack
-- Found PkgConfig: /usr/bin/pkg-config (found version "1.6.3")
-- Checking for module 'gthread-2.0'
--   Found gthread-2.0, version 2.60.6
-- Checking for module 'atk'
--   Found atk, version 2.32.0
-- Checking for module 'cairo'
--   Found cairo, version 1.17.3
-- Checking for module 'gdk-2.0'
--   Found gdk-2.0, version 2.24.32
-- Checking for module 'gdk-pixbuf-2.0'
--   Found gdk-pixbuf-2.0, version 2.38.1
-- Checking for module 'glib-2.0'
--   Found glib-2.0, version 2.60.6
-- Checking for module 'gobject-2.0'
--   Found gobject-2.0, version 2.60.6
-- Checking for module 'gtk+-2.0'
--   Found gtk+-2.0, version 2.24.32
-- Checking for module 'pango'
--   Found pango, version 1.44.4
-- Checking for module 'dbus-1'
--   Found dbus-1, version 1.12.16
-- Checking for module 'dbus-glib-1'
--   Found dbus-glib-1, version 0.110
-- Checking for module 'gmodule-2.0'
--   Found gmodule-2.0, version 2.60.6
-- Checking for module 'gudev-1.0'
--   Found gudev-1.0, version 233
-- Checking for module 'x11'
--   Found x11, version 1.6.8
-- Checking for module 'gaminggear-0'
--   Found gaminggear-0, version 0.15.1
-- Checking for module 'luajit53'
--   Package 'luajit53', required by 'virtual:world', not found
-- Checking for module 'luajit5.3'
--   Package 'luajit5.3', required by 'virtual:world', not found
-- Checking for module 'luajit-5.3'
--   Package 'luajit-5.3', required by 'virtual:world', not found
-- Checking for module 'luajit'
--   Package 'luajit', required by 'virtual:world', not found
-- Checking for module 'lua53'
--   Found lua53, version 5.3.5
-- Configuring done
-- Generating done
CMake Warning:
  Manually-specified variables were not used by the project:

    WITHOUT_PYTHON


-- Build files have been written to: /var/tmp/pamac-build-talrunya/roccat-tools/src/roccat-tools-5.9.0
Scanning dependencies of target generated_headers
[  0%] Built target generated_headers
[  0%] Generating g_cclosure_roccat_marshaller.h, g_cclosure_roccat_marshaller.c
INFO: Reading /var/tmp/pamac-build-talrunya/roccat-tools/src/roccat-tools-5.9.0/libroccathelper/g_roccat_marshaller...
INFO: Reading /var/tmp/pamac-build-talrunya/roccat-tools/src/roccat-tools-5.9.0/libroccathelper/g_roccat_marshaller...
Scanning dependencies of target libroccathelper
[  0%] Building C object libroccathelper/CMakeFiles/libroccathelper.dir/dbus_roccat_helper.c.o
[  1%] Building C object libroccathelper/CMakeFiles/libroccathelper.dir/g_cclosure_roccat_marshaller.c.o
[  1%] Building C object libroccathelper/CMakeFiles/libroccathelper.dir/g_dbus_roccat_helper.c.o
[  1%] Building C object libroccathelper/CMakeFiles/libroccathelper.dir/g_roccat_helper.c.o
[  1%] Building C object libroccathelper/CMakeFiles/libroccathelper.dir/g_udev_roccat_helper.c.o
[  1%] Building C object libroccathelper/CMakeFiles/libroccathelper.dir/gtk_roccat_helper.c.o
In Datei, eingebunden von /usr/include/pango-1.0/pango/pango-font.h:25,
                 von /usr/include/pango-1.0/pango/pango-attributes.h:25,
                 von /usr/include/pango-1.0/pango/pango.h:25,
                 von /usr/include/gtk-2.0/gdk/gdktypes.h:37,
                 von /usr/include/gtk-2.0/gdk/gdkscreen.h:32,
                 von /usr/include/gtk-2.0/gdk/gdkapplaunchcontext.h:31,
                 von /usr/include/gtk-2.0/gdk/gdk.h:32,
                 von /usr/include/gtk-2.0/gtk/gtk.h:32,
                 von /var/tmp/pamac-build-talrunya/roccat-tools/src/roccat-tools-5.9.0/libroccathelper/gtk_roccat_helper.h:21,
                 von /var/tmp/pamac-build-talrunya/roccat-tools/src/roccat-tools-5.9.0/libroccathelper/gtk_roccat_helper.c:18:
/usr/include/pango-1.0/pango/pango-coverage.h:28:10: schwerwiegender Fehler: hb.h: Datei oder Verzeichnis nicht gefunden
   28 | #include <hb.h>
      |          ^~~~~~
Kompilierung beendet.
make[2]: *** [libroccathelper/CMakeFiles/libroccathelper.dir/build.make:136: libroccathelper/CMakeFiles/libroccathelper.dir/gtk_roccat_helper.c.o] Fehler 1
make[1]: *** [CMakeFiles/Makefile2:408: libroccathelper/CMakeFiles/libroccathelper.dir/all] Fehler 2
make: *** [Makefile:141: all] Fehler 2
==> FEHLER: Ein Fehler geschah in build().
    Breche ab...



Grüße

Beitrag geändert von Talrunya (14.08.2019 11:35:47)

Offline

#5 14.08.2019 11:41:53

stefanhusmann
Moderator

Re: Roccat Tools

Warte noch ein paar Stunden oder höchstens Tage. pango 1.44.4 scheint die API zu heilen. Jedenfeils konnte ich gestern inkscape 0.92. und lilypond-devel und -git (alles AUR) wieder kompilieren, was vorher nicht ging.

Edit: Ich sehe gerade, pango wurde in den Repos schon aktualisiert.

Also einfach dasselbe mit installiertem pango 1.44.4 noch einmal versuchen.

Offline

#6 19.08.2019 20:17:59

efreak4u
Mitglied

Re: Roccat Tools

... und Code-Tags in den Foren benutzen tongue

Offline

#7 19.08.2019 22:13:29

stefanhusmann
Moderator

Re: Roccat Tools

Es kompiliert, wenn man

-DCMAKE_C_FLAGS="$(pkg-config --cflags harfbuzz)" \

bei den Cmake-Direktiven hinzufügt.

Offline

Schnellantwort auf dieses Thema

Schreibe deinen Beitrag und versende ihn
Deine Antwort

Fußzeile des Forums