# pkg-config --list-all | grep libgcrypt libgcrypt libgcrypt - General purpose cryptographic library # pkg-config --print-provides libgcrypt libgcrypt = 1.10.1 # pkg-config --print-variables libgcrypt api_version asymmetric_ciphers digests exec_prefix host includedir libdir pcfiledir prefix symmetric_ciphers
libgcrypt nicht gefunden, obwohl installiert
(Themenstarter)
Anmeldungsdatum: Beiträge: 454 |
|
Anmeldungsdatum: Beiträge: 4016 |
Welche? Kann sein, dass ich das im weiteren Verlauf überlesen habe, in der Threaderöffnung sehe ich den Namen der Software nicht. |
(Themenstarter)
Anmeldungsdatum: Beiträge: 454 |
@trollsportverein: Kannst Du mit der Ausgabe etwas anfangen? Ich würde pkg-config gerne die fehlenden Informationen irgendwie "einimpfen", aber weiß nicht wie. |
Anmeldungsdatum: Beiträge: 6345 Wohnort: Hamburg |
Da gibt es nichts zu impfen. Wie haben doch bereits festgestellt, dass libcrypt vorhanden ist und die wichtigen Variablen auch (dein vorletzter Post). Die Fehlermeldung sagt, dass cargs nicht erstellt werden konnten, aber nicht warum. Wobei ich die Meldung jetzt etwas ungenau finde. Ich vermute mal dass damit die cflags gemeint sind. Du kannst ja mal die Ausgaben zeigen von: pkg-config --cflags libcrypt und pkg-config --libs libcrypt Das sind die Dinge, die oft gebraucht werden und die das build-system weiter verarbeiten muss. Da Meson Python verwendet, sollten wir da mal nachsehen. Möglicherweise hast du mehrere Python Versionen auf dem Rechner. Bei mir waren es drei und es wurde immer die niedrigste Version genommen. Vielleicht kann man da ansetzen. |
(Themenstarter)
Anmeldungsdatum: Beiträge: 454 |
Ich vermute du meintest "pkg-config --cflags libgcrypt"...? Bei libcrypt kommt nicht viel. Für libgcrypt: #pkg-config --cflags libgcrypt Package gpg-error was not found in the pkg-config search path. Perhaps you should add the directory containing `gpg-error.pc' to the PKG_CONFIG_PATH environment variable Package 'gpg-error', required by 'libgcrypt', not found #pkg-config --libs libgcrypt -lgcrypt Edit: die Pakete libgpg-error und libgpg-error-dev sind natürlich bereits installiert... # apt search gpg-error Sortierung... Fertig Volltextsuche... Fertig libgpg-error-dev/bionic,bionic,bionic,now 1.27-6 amd64 [installiert] Bibliothek für allgemeine Fehlerkodes und -nachrichten von GnuPG-Komponenten libgpg-error-mingw-w64-dev/bionic,bionic,bionic,bionic,bionic,bionic 1.27-6 all library of error values and messages in GnuPG (Windows development) libgpg-error0/bionic,bionic,bionic,now 1.27-6 amd64 [installiert] Bibliothek für allgemeine Fehlerkodes und -nachrichten von GnuPG-Komponenten |
Anmeldungsdatum: Beiträge: 3417 |
Wenn im libgcrypt20-dev Paket die libgcrypt.pc Beschreibung enthalten ist, dann lässt sich nachschauen. Bei mir auf Kinetic Kudu sieht es so aus: dpkg -L libgcrypt20-dev /. /usr /usr/bin /usr/bin/dumpsexp /usr/bin/hmac256 /usr/bin/libgcrypt-config /usr/bin/mpicalc /usr/include /usr/include/gcrypt.h /usr/lib /usr/lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu/libgcrypt.a /usr/lib/x86_64-linux-gnu/pkgconfig /usr/lib/x86_64-linux-gnu/pkgconfig/libgcrypt.pc /usr/share /usr/share/aclocal /usr/share/aclocal/libgcrypt.m4 /usr/share/doc /usr/share/doc/libgcrypt20-dev /usr/share/doc/libgcrypt20-dev/copyright /usr/share/man /usr/share/man/man1 /usr/share/man/man1/dumpsexp.1.gz /usr/share/man/man1/hmac256.1.gz /usr/share/man/man1/libgcrypt-config.1.gz /usr/lib/x86_64-linux-gnu/libgcrypt.so /usr/share/doc/libgcrypt20-dev/changelog.Debian.gz In der /usr/lib/x86_64-linux-gnu/pkgconfig/libgcrypt.pc steht dann drin: cat /usr/lib/x86_64-linux-gnu/pkgconfig/libgcrypt.pc prefix=/usr exec_prefix=${prefix} includedir=${prefix}/include libdir=${prefix}/lib/x86_64-linux-gnu host=x86_64-pc-linux-gnu api_version=1 symmetric_ciphers="arcfour blowfish cast5 des aes twofish serpent rfc2268 seed camellia idea salsa20 gost28147 chacha20 sm4" asymmetric_ciphers="dsa elgamal rsa ecc" digests="crc gostr3411-94 md4 md5 rmd160 sha1 sha256 sha512 sha3 tiger whirlpool stribog blake2 sm3" Name: libgcrypt Description: General purpose cryptographic library Requires.private: gpg-error Version: 1.10.1 Cflags: -I${includedir} Libs: -L${libdir} -lgcrypt Libs.private: URL: https://www.gnupg.org/software/libgcrypt/index.html Das Werkzeug pkg-config ist übrigens in verschiedenen Paketen enthalten, Die Pakete pkg-config und pkgconf schließen sich aber gegenseitig aus. |
(Themenstarter)
Anmeldungsdatum: Beiträge: 454 |
Ja, die libgcrypt.pc sieht bei mir natürlich genauso aus. Die Datei hatte ich ja von Hand an die richtige Stelle kopiert. Meinst Du, ich sollte das Paket von Kinetic einfach in mein Bionic reininstallieren? Die Dateien aus Deinem Listing scheinen auf meinem System alle vorhanden zu sein. Sicher jedoch in anderer Version: ll /usr/lib/x86_64-linux-gnu/libgcrypt.so lrwxrwxrwx 1 root root 41 Sep 14 2021 /usr/lib/x86_64-linux-gnu/libgcrypt.so -> /lib/x86_64-linux-gnu/libgcrypt.so.20.2.1 # /usr/lib/x86_64-linux-gnu/pkgconfig$ ll /usr/lib/x86_64-linux-gnu/libgcrypt.a -rw-r--r-- 1 root root 1812928 Sep 14 2021 /usr/lib/x86_64-linux-gnu/libgcrypt.a # /usr/lib/x86_64-linux-gnu/pkgconfig$ ll /usr/include/gcrypt.h -rw-r--r-- 1 root root 70361 Sep 14 2021 /usr/include/gcrypt.h # /usr/lib/x86_64-linux-gnu/pkgconfig$ ll /usr/share/aclocal/libgcrypt.m4 -rw-r--r-- 1 root root 5421 Sep 14 2021 /usr/share/aclocal/libgcrypt.m4 # /usr/lib/x86_64-linux-gnu/pkgconfig$ ll /usr/share/man/man1/libgcrypt-config.1.gz -rw-r--r-- 1 root root 852 Sep 14 2021 /usr/share/man/man1/libgcrypt-config.1.gz # /usr/lib/x86_64-linux-gnu/pkgconfig$ ll /usr/lib/x86_64-linux-gnu/libgcrypt.so lrwxrwxrwx 1 root root 41 Sep 14 2021 /usr/lib/x86_64-linux-gnu/libgcrypt.so -> /lib/x86_64-linux-gnu/libgcrypt.so.20.2.1 # /usr/lib/x86_64-linux-gnu/pkgconfig$ ll /usr/share/doc/libgcrypt20-dev/changelog.Debian.gz lrwxrwxrwx 1 root root 34 Sep 14 2021 /usr/share/doc/libgcrypt20-dev/changelog.Debian.gz -> ../libgcrypt20/changelog.Debian.gz # /usr/lib/x86_64-linux-gnu/pkgconfig$ ll /usr/share/man/man1/hmac256.1.gz -rw-r--r-- 1 root root 707 Sep 14 2021 /usr/share/man/man1/hmac256.1.gz # /usr/lib/x86_64-linux-gnu/pkgconfig$ ll /usr/share/man/man1/dumpsexp.1.gz -rw-r--r-- 1 root root 609 Sep 14 2021 /usr/share/man/man1/dumpsexp.1.gz |
Anmeldungsdatum: Beiträge: 3417 |
Nun sag doch mal, was das für eine Software ist, die sich beim Selbtbau quer stellt. Könnte ja sein, dass irgendjemand des Rätsels Lösung dann etwas näher kommt, wie der Selbstbau gelingt. |
(Themenstarter)
Anmeldungsdatum: Beiträge: 454 |
minidisc-ffwd, neuester Fork von Linux-Minidisc. |
Anmeldungsdatum: Beiträge: 3417 |
Also, das konfigurieren mit meson läuft durch bei mir auf Kinetic Kudu. Erstmal den Code holen: git clone 'https://github.com/thp/linux-minidisc.git' Ins Verzeichnis wechseln: cd linux-minidisc/ Mit meson konfigurieren, mit static libary: meson build -Ddefault_library=static The Meson build system Version: 0.63.0 Source dir: $HOME/linux-minidisc Build dir: $HOME/linux-minidisc/build Build type: native build Project name: minidisc Project version: undefined C compiler for the host machine: cc (gcc 12.2.0 "cc (Ubuntu 12.2.0-3ubuntu1) 12.2.0") C linker for the host machine: cc ld.bfd 2.39 C++ compiler for the host machine: c++ (gcc 12.2.0 "c++ (Ubuntu 12.2.0-3ubuntu1) 12.2.0") C++ linker for the host machine: c++ ld.bfd 2.39 Host machine cpu family: x86_64 Host machine cpu: x86_64 Found pkg-config: /usr/bin/pkg-config (0.29.2) Run-time dependency libusb-1.0 found: YES 1.0.26 Run-time dependency libgcrypt found: YES 1.10.1 Run-time dependency glib-2.0 found: YES 2.74.3 Run-time dependency taglib found: YES 1.11.1 Run-time dependency json-c found: YES 0.16 Run-time dependency mad found: YES 0.15.0b Configuring himd_config.h using configuration Build targets in project: 6 minidisc undefined User defined options default_library: static Found ninja-1.11.1 at /usr/bin/ninja Bis dahin hat es geklappt. Nun mit ninja bauen, das geht dann leider schief: ninja -C build ninja: Entering directory `build' [33/34] Compiling C object himdcli.p/himdcli_himdcli.c.o FAILED: himdcli.p/himdcli_himdcli.c.o cc -Ihimdcli.p -I. -I.. -I../libusbmd -I../libhimd -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/json-c -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Werror -std=gnu11 -O0 -g -MD -MQ himdcli.p/himdcli_himdcli.c.o -MF himdcli.p/himdcli_himdcli.c.o.d -o himdcli.p/himdcli_himdcli.c.o -c ../himdcli/himdcli.c ../himdcli/himdcli.c: In function ‘himd_trackdump’: ../himdcli/himdcli.c:158:34: error: ‘.00’ directive writing 3 bytes into a region of size between 1 and 8 [-Werror=format-overflow=] 158 | sprintf(time, "%02d:%02d:%02d.00", recordedTime/3600, (recordedTime % 3600)/60, recordedTime % 60); | ^~~ ../himdcli/himdcli.c:158:5: note: ‘sprintf’ output between 12 and 19 bytes into a destination of size 16 158 | sprintf(time, "%02d:%02d:%02d.00", recordedTime/3600, (recordedTime % 3600)/60, recordedTime % 60); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../himdcli/himdcli.c:90:33: error: ‘%02d’ directive writing between 2 and 3 bytes into a region of size between 2 and 9 [-Werror=format-overflow=] 90 | sprintf(time, "%02d:%02d.00", t.seconds/60, t.seconds % 60); | ^~~~ ../himdcli/himdcli.c:90:27: note: directive argument in the range [-59, 59] 90 | sprintf(time, "%02d:%02d.00", t.seconds/60, t.seconds % 60); | ^~~~~~~~~~~~~~ ../himdcli/himdcli.c:90:13: note: ‘sprintf’ output between 9 and 17 bytes into a destination of size 12 90 | sprintf(time, "%02d:%02d.00", t.seconds/60, t.seconds % 60); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ cc1: all warnings being treated as errors ninja: build stopped: subcommand failed. Kinetic Kudu hat die 12er gcc: gcc --version gcc (Ubuntu 12.2.0-3ubuntu1) 12.2.0 Copyright (C) 2022 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Meine meson Version habe ich aus dem PPA für Daily build of upstream meson Ein Minidisc Gerät habe ich nicht. Ich könnte es daher auch gar nicht ausprobieren ob linux-minidisc funktioniert, wenn es durchbauen würde. Edit: bauen klappt nun doch. 😎 Habe mich erinnert, dass ich mir mal was zum Compiler umstellen gefrickelt hatte: Mit der älteren GCC 11 baut es blitzschnell fehlerfrei durch. 👍 ninja -C build ninja: Entering directory `build' [34/34] Linking target himdcli Noch ein Edit: auch die GUI hat sich bauen lassen mit der 11er GCC: meson build -Dwith_gui=true && ninja -C build && build/qhimdtransfer Siehe Anhänge. |
Anmeldungsdatum: Beiträge: 6345 Wohnort: Hamburg |
Hm, das war jetzt wohl eher etwas für fortgeschrittene, wo ich noch nicht ganz angekommen bin. Aber ich hätte da wohl noch einen MiniDisk Player. Den müsste ich aber erst mal suchen. Und trivial finde ich die Build-Prozedur jetzt auch nicht. Aber mich machen die Fehlermeldungen sprintf(time,... stutzig. Könnte es sein, das dieses Programm tatsächlich ermöglicht Musikdateien zu speichern und abzuspielen? Früher konnte man auf MD mit Linux nur Binärdaten abspeichern und lesen, weshalb ich mich nicht weiter darum gekümmert hatte. Um überhaupt noch mit einem PC Musikdaten auf MD abspeichern zu können hatte ich bisher meinen alten Windows 2000 PC behalten (wobei ich nicht weiß, ob er noch funktioniert). Wenn man damit auch die Metadaten editieren kann, sollte ich mir das Programm wohl etwas näher ansehen. |
Supporter
Anmeldungsdatum: Beiträge: 53601 Wohnort: Berlin |
Ähm, was du da gebaut hast, liegt doch in den offiziellen Paketquellen? qhimdtransfer |
Anmeldungsdatum: Beiträge: 3417 |
Potzblitz! Was für eine Teufelei, dieses Ubuntu. Was es da nicht alles fix und fertig gibt. ☺ Edit: ich sehe gerade, das was zum Selbstbau angefragt wurde ist ein Fork, das Fertigpaket hingegen soll aus dem alten Code gebaut sein. Auch die Versionsnummer vom selbst gebauten QHiMDTransfer ist höher. Ich habe ja kein solches Gerät, daher kann ich schwerlich beurteilen was für Vor- oder Nachteile das selbstgebaute linux-minidisk QHiMDTransfer zum Fertigpaket im praktischen Gebrauch hat. |
(Themenstarter)
Anmeldungsdatum: Beiträge: 454 |
Erstmal vielen Dank für's durchprobieren. Ja genau, das Paket ist der neueste Fork und daher so nicht in den Pakletquellen.
Ja, ganz recht. Die Minidisc-Player werden nämlich gerade gehackt. HiMD ist immernoch ein Problem, doch Musik per USB auf normale Mini-Disc kopieren geht bereits. Dabei wird standardmäßig in SP gespeichert und nicht etwa in reduzierter Qualität, wie bei dieser schrecklichen Sony-Software. Außerdem kann man Titel umbenennen und umsortieren. Hochladen geht meines wissens (noch) nicht. Es gibt aber ein Python-Script (in einem der Unterordner), mit dem man per Line-In automatisch auf PC überspielen kann. Die Titel sollen dann automatisch abgetrennt und benannt werden (angeblich). Die Übertragungsgeschwindigkeit PC → MD über USB liegt bei alten Player bei zweifacher, bei neueren Playern bei vierfacher Abspiel-Geschwindigkeit. Minidisc-Player sind gerade schwer beliebt: Wenn Du noch einen rumfliegen hast, unbedingt rausholen und entstauben! Auf Ebay werden bereits kaputte Geräte für 100 Euro gehandelt. Normalpreis für funtkionierende Geräte: 200-300 Euro. Der seltene NH1 (der einzige ohne jeglichen Kopierschutz) ist 1400 Euro Wert. Leere MDs werden immernoch hergestellt und liegen bei knapp 10 € pro Stück. Man bekommt aber auch gut gebrauchte für 3-5 Euro. Original Minidisc-Alben haben hohen Sammlerwert: Wenn's was bekannteres ist, sind 100-200 Euro ganz normal (Michael Jackson 500 Euro!). Hier ist DER Link, wo alles zum aktuellen Stand zu lesen ist: Minidisc-Wiki Es gibt im wesentlichen drei Programme zum Kopieren auf MD: linux-minidisc, Web MiniDisc Pro (eine Webseite für Chrome-Browser) und Platinum-MD (basiert auf linux-minidisc). Dann gibt's noch NetMD-Wizard, dass CDs auf MD kopiert. Jetzt aber mal zu meinem Software-Problem: Bei mir war es so, dass ja schon das Meson nicht gebaut hat, weil es das libgcrypt nicht gefunden hat. Bei Kintetic ist dieses libgcrypt-Paket wohl nicht kaputt und enthält die .pc-Datei für pkg-config. Deshalb habe ich die Datei ja manuell aus dem Kinetic-Paket rauskopiert, kann nun aber immernoch nicht kompilieren (wegen irgendwelcher cflags - was immer das ist). @trollsportverein...du kannst nicht zufällig aus Deinem Build ein Appimage bauen?...Mal ganz dreist gefragt... 😊 Das wäre für mich am einfachsten... |
Anmeldungsdatum: Beiträge: 3417 |
Bionic Beaver ist nur noch einige Tage im Support, dann ist Ende im Gelände, Sicherheitslücken werden nicht mehr geschlossen. Das ist doch Quatsch solchen Aufwand für Bionic Beaver zu betreiben. Mach Upgrade auf ein aktuelles Ubuntu Release, da enthält dann das libgcrypt20-dev Paket auch für pkg-config die /usr/lib/x86_64-linux-gnu/pkgconfig/libgcrypt.pc Datei für die Konfiguration die das Meson Build System braucht. |