ubuntuusers.de

Paket bauen ohne Build-Anweisungen

Status: Gelöst | Ubuntu-Version: Xubuntu 22.04 (Jammy Jellyfish)
Antworten |

Fried-rich

Anmeldungsdatum:
2. Mai 2013

Beiträge: 1130

Hallo,

ich versuche dieses Tool https://github.com/sandsmark/selectdefaultapplication zu kompilieren. Leider gibt es dort keinerlei Buidl-Anweisungen. Die Readme zeigt einen Screenshot und 3 Links zum Funktionsprinzip der MIME-Datenbank. Keine Datei namens "INSTALL" oder "BUILD". Wie baue ich das Paket hier? Hier https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=selectdefaultapplication-git gibt es scheinbar eine Art "Build-Script" für Arch. Dort gibt es das:

cd selectdefaultapplication
qmake
make

Das sieht so als müsse es irgendwas Richtung make in dem Ordner geben - gibt es aber nicht.

Ich stehe hier dezent auf dem Schlauch.

Friedrich

tomtomtom Team-Icon

Supporter
Avatar von tomtomtom

Anmeldungsdatum:
22. August 2008

Beiträge: 55174

Wohnort: Berlin

Fried-rich schrieb:

Das sieht so als müsse es irgendwas Richtung make in dem Ordner geben - gibt es aber nicht.

qmake ist in dem Fall äquivalent zu ./configure. Danach wird mittels make kompiliert.

In einer debian/rules wäre das im einfachsten Fall (und im PKGBUILD werden ja keine weiteren Optionen gesetzt)

#!/usr/bin/make -f
%:
        dh $@ --buildsystem=qmake

Fried-rich

(Themenstarter)

Anmeldungsdatum:
2. Mai 2013

Beiträge: 1130

Nachdem ich einiges an Qt5-Kram installieren musste gab qmake keine Fehler mehr aus - aber auch sonst keinerlei Rückmeldung. Vermute das ist normal?

make lief dann ohne Probleme. Ich nutze normal keine selbst kompilierten Programme, weshalb ich hier lieber mit checkinstall (ohne sudo) eine *.deb habe erstellen lassen und die dann mit apt installiert. Lief alles ohne Probleme, das Programm wurde installiert:

dpkg -l selec*
ii  selectdefaultapplication 20231021-1   amd64        select default app

Problem: Wie starte ich es? Es wurden scheinbar keine *.desktop-Dateien mit hinterlegt, es taucht nirgendwo im Xfce-Menü auf. Keines der Programme die mit 'select' beginnen hat etwas damit zu tun:

select                   select-default-ispell    select-default-iwrap     select-default-wordlist  select-editor

Alles was heute unter /usr/bin hinzugefügt wurde ist was anderes, das gleiche bei /usr/sbin.

Lange Rede: ich weiß nicht wo das Programm ist und wie man es startet.

tomtomtom Team-Icon

Supporter
Avatar von tomtomtom

Anmeldungsdatum:
22. August 2008

Beiträge: 55174

Wohnort: Berlin

Fried-rich schrieb:

Nachdem ich einiges an Qt5-Kram installieren musste gab qmake keine Fehler mehr aus - aber auch sonst keinerlei Rückmeldung. Vermute das ist normal?

Der Sprung zurück zum Prompt ist seit immer™ das Zeichen für das abgeschlossene fehlerfreie Ausführen eines Befehls im Terminal. 😛

make lief dann ohne Probleme. Ich nutze normal keine selbst kompilierten Programme, weshalb ich hier lieber mit checkinstall (ohne sudo) eine *.deb habe erstellen lassen und die dann mit apt installiert. Lief alles ohne Probleme, das Programm wurde installiert:

dpkg -l selec*
ii  selectdefaultapplication 20231021-1   amd64        select default app

Da wurde nicht das Programm, sondern ein Paket mit dem Namen installiert. Die Versionsnummer dürfte ja auch falsch sein. Halt das, was du angegeben hast bei checkinstall. Hat ja mit sauberem Paketbau nichts zu tun.

Wird dann auch nur auf dem System laufen, außer du hast alle Abhängigkeiten des Programms in das entsprechend von checkinstall abgefragten Feld eingetragen.

Problem: Wie starte ich es? Es wurden scheinbar keine *.desktop-Dateien mit hinterlegt, es taucht nirgendwo im Xfce-Menü auf. Keines der Programme die mit 'select' beginnen hat etwas damit zu tun:

select                   select-default-ispell    select-default-iwrap     select-default-wordlist  select-editor

Alles was heute unter /usr/bin hinzugefügt wurde ist was anderes, das gleiche bei /usr/sbin.

Lange Rede: ich weiß nicht wo das Programm ist und wie man es startet.

Nun, dem von dir selbst gegebenen Link zum PKGBUILD folgend muss da auch nachgearbeitet werden. Bei einer sauberen Paketerstellung hätte man dafür eine .install-Datei erstellt.

Was nachgearbeitet werden muss lässt sich auch aus dem PKGBUILD ableiten:

Aus dem Verzeichnis, in dem du die Software kompiliert hast, heraus:

sudo install -m755 selectdefaultapplication /usr/bin/
sudo install -m644 selectdefaultapplication.desktop /usr/share/applications/
sudo install -m644 selectdefaultapplication.png /usr/share/icons/hicolor/48x48/apps/

Also Binary, Starter und Icon.

Die werden dann natürlich bei der Deinstallation des Pakets auch nicht wieder entfernt, da sie ja nicht zum Paket gehören.

von.wert

Anmeldungsdatum:
23. Dezember 2020

Beiträge: 11642

tomtomtom, was Du nur mit "sauber" hast, das ist bei "an ugly hack" auch egal. 😉

Fried-rich

(Themenstarter)

Anmeldungsdatum:
2. Mai 2013

Beiträge: 1130

OK, jetzt hab ich das besser verstanden. Mein Problem bei kompilierten Programmen ist, dass man die nicht immer wieder restlos deinstalliert bekommt, wenn es vom Entwickler nichts dazu bekommt.

Geht auf jeden Fall, Danke für die Hilfe.

trollsportverein

Avatar von trollsportverein

Anmeldungsdatum:
21. Oktober 2010

Beiträge: 4624

Fried-rich schrieb:

OK, jetzt hab ich das besser verstanden. Mein Problem bei kompilierten Programmen ist, dass man die nicht immer wieder restlos deinstalliert bekommt, wenn es vom Entwickler nichts dazu bekommt.

Dann macht man es einfach selbst. Ninja macht bei Installation ein install_manifest.txt. Da steht nicht mehr drin, als die Dateien und Orte, wo das gebaute hin installiert wurde. Das install_manifest.txt hebt man auf und kann damit dann kinderleicht deinstallieren. Die Information zu den drei Dateien vom selectdefaultapplication in eine entsprechende Textdatei abzuspeichern, sollte doch nicht zu viel verlangt sein, wenn man für eine Deinstallation vorbereitet sein möchte.

Antworten |