ubuntuusers.de

MAKE von älteren Projekt geht nicht mehr

Status: Gelöst | Ubuntu-Version: Ubuntu 24.04 (Noble Numbat)
Antworten |

UlfZibis

(Themenstarter)

Anmeldungsdatum:
13. Juli 2011

Beiträge: 3162

Wohnort: Köln

vmp schrieb:

und den patches: configure-checks.patch, format-string-literals.patch

Hab' jetzt auch noch das 2. Patch eingepflegt. Leider ändert das nichts, also die conduits werden weiterhin nicht compiliert.

vmp

Anmeldungsdatum:
28. März 2018

Beiträge: 130

If you are using a CVS version of pilot-link, you will have to run
	'sh ./autogen.sh' instead, from the top-level directory, which will
	create and bootstrap the "./configure" script for you.

Bei CVS Version soll man zu erzeugen von ./configure

sh ./autogen.sh

ausführen.

vmp

Anmeldungsdatum:
28. März 2018

Beiträge: 130

Für die conduits braucht man noch pilot-link-0.12.2-bindings_fix-1.patch und

./configure --prefix=/home/gons/pilot --enable-conduits --with-perl

UlfZibis

(Themenstarter)

Anmeldungsdatum:
13. Juli 2011

Beiträge: 3162

Wohnort: Köln

vmp schrieb:

Bei CVS Version soll man zu erzeugen von ./configure

sh ./autogen.sh

ausführen.

Das ist ein uraltes Skript, als autoconf etc. noch nicht angewendet werden konnte. Das funzt erst recht nicht:

$ sh ./autogen.sh

**Error**: You must have `libtool' installed to compile pilot-link.
Get ftp://ftp.gnu.org/pub/gnu/libtool/libtool-2.4.tar.xz
(or a newer version if it is available)
$ apt -s install libtool
HINWEIS: Dies ist nur eine Simulation!
         apt benötigt root-Privilegien für die reale Ausführung.
         Behalten Sie ebenfalls in Hinterkopf, dass die Sperren deaktiviert
         sind, verlassen Sie sich also bezüglich des reellen aktuellen
         Status der Sperre nicht darauf!
Paketlisten werden gelesen… Fertig
Abhängigkeitsbaum wird aufgebaut… Fertig
Statusinformationen werden eingelesen… Fertig
libtool ist schon die neueste Version (2.4.7-7build1).
libtool wurde als manuell installiert festgelegt.
0 aktualisiert, 0 neu installiert, 0 zu entfernen und 3 nicht aktualisiert.

Eine CVS-Version gibt es auch nicht mehr, aber man könnte die Anweisung auch für die jetzige GIT-Version interpretieren.

vmp

Anmeldungsdatum:
28. März 2018

Beiträge: 130

Ich habe ausgeführt:

apt install libtool-bin

dann funktioniert:

sh ./autogen.sh

UlfZibis

(Themenstarter)

Anmeldungsdatum:
13. Juli 2011

Beiträge: 3162

Wohnort: Köln

vmp schrieb:

Für die conduits braucht man noch pilot-link-0.12.2-bindings_fix-1.patch und

./configure --prefix=/home/gons/pilot --enable-conduits --with-perl
  1. Diesen Patch halte ich für problematisch, denn es verändert die Makefile.in-Dateien. Diese werden aber erst durch autoreconf erzeugt (und bei Wiederanwendung auch wieder überschrieben). Wenn, dann müsste also früher angesetzt werden, also in configure.ac oder Makefile.am.

  2. Weiterhin passen im Patch von bindings/Makefile.in die Zeilennummern nicht. Statt in Zeile 603 müsste die Änderung in Zeile 728 erfolgen.

Ich hab's trotzdem mal versucht:

$ ./configure --prefix=/home/ich/Projects/Palm/PilotLink/pilot-link-CoSoCo/dist/ --enable-conduits
[.....]
$ make
[.....]
mv -f .deps/pilot-install-datebook.Tpo .deps/pilot-install-datebook.Po
test -f parsedate.c || /bin/bash ../ylwrap parsedate.y y.tab.c parsedate.c y.tab.h `echo parsedate.c | sed -e s/cc$/hh/ -e s/cpp$/hpp/ -e s/cxx$/hxx/ -e s/c++$/h++/ -e s/c$/h/` y.output parsedate.output -- yacc  
../ylwrap: Zeile 175: yacc: Befehl nicht gefunden
make[3]: *** [Makefile:1515: parsedate.c] Fehler 127
make[3]: Verzeichnis „/home/ich/Projects/Palm/PilotLink/pilot-link-CoSoCo/src“ wird verlassen
make[2]: *** [Makefile:1530: all-recursive] Fehler 1
make[2]: Verzeichnis „/home/ich/Projects/Palm/PilotLink/pilot-link-CoSoCo/src“ wird verlassen
make[1]: *** [Makefile:585: all-recursive] Fehler 1
make[1]: Verzeichnis „/home/ich/Projects/Palm/PilotLink/pilot-link-CoSoCo“ wird verlassen
make: *** [Makefile:463: all] Fehler 2

vmp

Anmeldungsdatum:
28. März 2018

Beiträge: 130

apt install byacc

UlfZibis

(Themenstarter)

Anmeldungsdatum:
13. Juli 2011

Beiträge: 3162

Wohnort: Köln

vmp schrieb:

apt install libtool-bin

dann funktioniert:

sh ./autogen.sh

Stimmt.
Aber make funktioniert dann immer noch nicht mit conduits:

$ sh ./autogen.sh --prefix=/home/ich/Projects/Palm/PilotLink/pilot-link-desrod_autogen/dist/ --enable-conduits
[.....]
$ make
[.....]
/bin/bash ../ylwrap parsedate.y y.tab.c parsedate.c y.tab.h `echo parsedate.c | sed -e s/cc$/hh/ -e s/cpp$/hpp/ -e s/cxx$/hxx/ -e s/c++$/h++/ -e s/c$/h/` y.output parsedate.output -- yacc  
../ylwrap: Zeile 175: yacc: Befehl nicht gefunden
make[3]: *** [Makefile:1515: parsedate.c] Fehler 127
make[3]: Verzeichnis „/home/ich/Projects/Palm/PilotLink/pilot-link-desrod_autogen/src“ wird verlassen
make[2]: *** [Makefile:1530: all-recursive] Fehler 1
make[2]: Verzeichnis „/home/ich/Projects/Palm/PilotLink/pilot-link-desrod_autogen/src“ wird verlassen
make[1]: *** [Makefile:585: all-recursive] Fehler 1
make[1]: Verzeichnis „/home/ich/Projects/Palm/PilotLink/pilot-link-desrod_autogen“ wird verlassen
make: *** [Makefile:463: all] Fehler 2

UlfZibis

(Themenstarter)

Anmeldungsdatum:
13. Juli 2011

Beiträge: 3162

Wohnort: Köln

vmp schrieb:

apt install byacc

Sehr guter Fund. Jetzt zeigen sich zumindest andere Fehler:

$ sh ./autogen.sh --prefix=/home/ich/Projects/Palm/PilotLink/pilot-link-desrod_autogen/dist/ --enable-conduits
[.....]
$ make
[.....]
gcc -DHAVE_CONFIG_H -I. -I.. -I../include -I/usr/include -I../include        -g2 -Wall -MT pilot-read-notepad.o -MD -MP -MF .deps/pilot-read-notepad.Tpo -c -o pilot-read-notepad.o pilot-read-notepad.c
pilot-read-notepad.c: In function ‘write_png’:
pilot-read-notepad.c:169:31: error: ‘png_voidp_NULL’ undeclared (first use in this function); did you mean ‘png_voidp’?
  169 |      ( PNG_LIBPNG_VER_STRING, png_voidp_NULL,
      |                               ^~~~~~~~~~~~~~
      |                               png_voidp
pilot-read-notepad.c:169:31: note: each undeclared identifier is reported only once for each function it appears in
pilot-read-notepad.c:170:8: error: ‘png_error_ptr_NULL’ undeclared (first use in this function); did you mean ‘png_error_ptr’?
  170 |        png_error_ptr_NULL, png_error_ptr_NULL);
      |        ^~~~~~~~~~~~~~~~~~
      |        png_error_ptr
make[3]: *** [Makefile:1494: pilot-read-notepad.o] Fehler 1
make[3]: Verzeichnis „/home/ich/Projects/Palm/PilotLink/pilot-link-desrod_autogen/src“ wird verlassen
make[2]: *** [Makefile:1530: all-recursive] Fehler 1
make[2]: Verzeichnis „/home/ich/Projects/Palm/PilotLink/pilot-link-desrod_autogen/src“ wird verlassen
make[1]: *** [Makefile:585: all-recursive] Fehler 1
make[1]: Verzeichnis „/home/ich/Projects/Palm/PilotLink/pilot-link-desrod_autogen“ wird verlassen
make: *** [Makefile:463: all] Fehler 2

Irgendwo war doch ein auf png bezogenes Patch.

vmp

Anmeldungsdatum:
28. März 2018

Beiträge: 130

UlfZibis

(Themenstarter)

Anmeldungsdatum:
13. Juli 2011

Beiträge: 3162

Wohnort: Köln

vmp schrieb:

pilot-link-png14.patch

ERFOLG 👍

$ sudo apt install build-essential automake libtool-bin git
$ git clone https://github.com/desrod/pilot-link.git
$ mv pilot-link pilot-link-desrod_autogen
$ cd pilot-link-desrod_autogen
$ wget https://github.com/NixOS/nixpkgs/tree/master/pkgs/by-name/pi/pilot-link/configure-checks.patch
$ wget https://github.com/NixOS/nixpkgs/tree/master/pkgs/by-name/pi/pilot-link/format-string-literals.patch
$ wget https://github.com/NixOS/nixpkgs/tree/master/pkgs/by-name/pi/pilot-link/pilot-link-png14.patch
$ patch -p 1 -i configure-checks.patch
$ patch -p 1 -i format-string-literals.patch
$ patch -p 1 -i pilot-link-png14.patch
$ sudo apt install libusb-dev libbluetooth-dev libpopt-dev byacc
$ sh ./autogen.sh --prefix=/home/ich/Projects/Palm/PilotLink/pilot-link-desrod_autogen/dist/ --enable-conduits
$ make install
$ ls -l dist/bin
insgesamt 1732
-rwxr-xr-x 1 ich ich  60424 Mär  7 15:24 pilot-addresses
-rwxr-xr-x 1 ich ich  40640 Mär  7 15:24 pilot-clip
-rwxr-xr-x 1 ich ich  30672 Mär  7 15:24 pilot-csd
-rwxr-xr-x 1 ich ich  22808 Mär  7 15:24 pilot-debugsh
-rwxr-xr-x 1 ich ich  41512 Mär  7 15:24 pilot-dedupe
-rwxr-xr-x 1 ich ich  58720 Mär  7 15:24 pilot-dlpsh
-rwxr-xr-x 1 ich ich  38432 Mär  7 15:24 pilot-file
-rwxr-xr-x 1 ich ich  66208 Mär  7 15:24 pilot-foto
-rwxr-xr-x 1 ich ich  42608 Mär  7 15:24 pilot-foto-treo600
-rwxr-xr-x 1 ich ich  44376 Mär  7 15:24 pilot-foto-treo650
-rwxr-xr-x 1 ich ich  51920 Mär  7 15:24 pilot-getram
-rwxr-xr-x 1 ich ich  51904 Mär  7 15:24 pilot-getrom
-rwxr-xr-x 1 ich ich  51936 Mär  7 15:24 pilot-getromtoken
-rwxr-xr-x 1 ich ich  46888 Mär  7 15:24 pilot-hinotes
-rwxr-xr-x 1 ich ich  67816 Mär  7 15:24 pilot-install-datebook
-rwxr-xr-x 1 ich ich  42992 Mär  7 15:24 pilot-install-expenses
-rwxr-xr-x 1 ich ich  42464 Mär  7 15:24 pilot-install-hinote
-rwxr-xr-x 1 ich ich  52032 Mär  7 15:24 pilot-install-memo
-rwxr-xr-x 1 ich ich  39672 Mär  7 15:24 pilot-install-netsync
-rwxr-xr-x 1 ich ich  41848 Mär  7 15:24 pilot-install-todo
-rwxr-xr-x 1 ich ich  40736 Mär  7 15:24 pilot-install-todos
-rwxr-xr-x 1 ich ich  39784 Mär  7 15:24 pilot-install-user
-rwxr-xr-x 1 ich ich  54264 Mär  7 15:24 pilot-memos
-rwxr-xr-x 1 ich ich  40144 Mär  7 15:24 pilot-nredir
-rwxr-xr-x 1 ich ich  43384 Mär  7 15:24 pilot-read-expenses
-rwxr-xr-x 1 ich ich  52720 Mär  7 15:24 pilot-read-ical
-rwxr-xr-x 1 ich ich  50544 Mär  7 15:24 pilot-read-notepad
-rwxr-xr-x 1 ich ich  57808 Mär  7 15:24 pilot-read-palmpix
-rwxr-xr-x 1 ich ich  48936 Mär  7 15:24 pilot-read-screenshot
-rwxr-xr-x 1 ich ich  43864 Mär  7 15:24 pilot-read-todos
-rwxr-xr-x 1 ich ich  62608 Mär  7 15:24 pilot-read-veo
-rwxr-xr-x 1 ich ich  46840 Mär  7 15:24 pilot-reminders
-rwxr-xr-x 1 ich ich  41488 Mär  7 15:24 pilot-schlep
-rwxr-xr-x 1 ich ich  47328 Mär  7 15:24 pilot-wav
-rwxr-xr-x 1 ich ich 102336 Mär  7 15:24 pilot-xfer

Später probiere ich dann auch noch mal, ob es so auch mit autoreconf -i -s && ./configure ... && make install funktioniert.

Also hier mal einen ganz fetten Dank an vmp für die grandiose Unterstützung.

vmp

Anmeldungsdatum:
28. März 2018

Beiträge: 130

Auf OBS gibt es binaries zu pilot-link.

UlfZibis

(Themenstarter)

Anmeldungsdatum:
13. Juli 2011

Beiträge: 3162

Wohnort: Köln

vmp schrieb:

Auf OBS gibt es binaries zu pilot-link.

Interessant, aber die gibt's auch hier: https://www.jpilot.org/ bzw. hier: https://packagecloud.io/judd/jpilot

Und bei letzteren bin ich sicher, dass die Schlüssel konform zu den Debian-Sicherheitsregeln installiert werden, statt in /etc/apt/trusted.gpg.d/.

UlfZibis

(Themenstarter)

Anmeldungsdatum:
13. Juli 2011

Beiträge: 3162

Wohnort: Köln

UlfZibis schrieb:

ERFOLG 👍

$ sudo apt install build-essential automake libtool-bin git
$ git clone https://github.com/desrod/pilot-link.git
[.....]

Später probiere ich dann auch noch mal, ob es so auch mit autoreconf -i -s && ./configure ... && make install funktioniert.

Wer obiges ausprobiert hat, wird kleine Fehler festgestellt haben, die sich jedoch selbsterklärend ausmerzen lassen. Im folgenden nun die richtigen Kommandos, diesmal unter Verwendung der moderneren Werkzeuge autoupdate und autoreconf anstatt sh ./autogen.sh . Der Pfad hinter --prefix= muss den lokalen Gegebenheiten angepasst werden.

sudo apt install build-essential automake libtool-bin git
git clone https://github.com/desrod/pilot-link.git
mv pilot-link pilot-link-desrod_autoreconf
cd pilot-link-desrod_autoreconf
wget https://raw.githubusercontent.com/NixOS/nixpkgs/refs/heads/master/pkgs/by-name/pi/pilot-link/configure-checks.patch
wget https://raw.githubusercontent.com/NixOS/nixpkgs/refs/heads/master/pkgs/by-name/pi/pilot-link/format-string-literals.patch
wget https://raw.githubusercontent.com/NixOS/nixpkgs/refs/heads/master/pkgs/by-name/pi/pilot-link/pilot-link-png14.patch
patch -p 1 -i configure-checks.patch
patch -p 1 -i format-string-literals.patch
patch -p 1 -i pilot-link-png14.patch
sudo apt install libusb-dev libbluetooth-dev libpopt-dev byacc
autoupdate
autoreconf -i -s
./configure --prefix=/home/USER/PFAD/ZUM/PROJEKT/pilot-link-desrod_autoreconf/dist/ --enable-conduits
make
make install
dist/bin/pilot-xfer --version 

Die Patches werden nicht mehr nötig sein, wenn der Original-Autor sie eingepflegt hat.

Antworten |