[gelöst] prüfen, ob ein bestimmtes Programm installiert ist

Für alles, was in den übrigen Lazarusthemen keinen Platz, aber mit Lazarus zutun hat.
Antworten
MacWomble
Lazarusforum e. V.
Beiträge: 999
Registriert: Do 17. Apr 2008, 01:59
OS, Lazarus, FPC: Mint 21.1 Cinnamon / FPC 3.2.2/Lazarus 2.2.4
CPU-Target: Intel i7-10750 64Bit
Wohnort: Freiburg

[gelöst] prüfen, ob ein bestimmtes Programm installiert ist

Beitrag von MacWomble »

Wie kann ich - unter Linux - prüfen, ob ein bestimmtes Programm installiert ist (z.B Imagemagick)
Zuletzt geändert von MacWomble am Di 14. Aug 2018, 21:35, insgesamt 1-mal geändert.
Alle sagten, dass es unmöglich sei - bis einer kam und es einfach gemacht hat.

Socke
Lazarusforum e. V.
Beiträge: 3158
Registriert: Di 22. Jul 2008, 19:27
OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 10/Linux/Raspbian/openSUSE
CPU-Target: 32bit x86 armhf
Wohnort: Köln
Kontaktdaten:

Re: prüfen, ob ein bestimmtes Programm installiert ist

Beitrag von Socke »

MacWomble hat geschrieben:Wie kann ich - unter Linux - prüfen, ob ein bestimmtes Programm installiert ist (z.B Imagemagick)

Das Programm /usr/bin/which liefert dir den vollen Pfad einer Programmdatei zurück, sofern das Programm in $PATH aufrufbar ist. Den Pfad kannst du dann in TProcess.Executable eingeben und das Programm aufrufen.
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein

Linkat
Lazarusforum e. V.
Beiträge: 530
Registriert: So 10. Sep 2006, 23:24
OS, Lazarus, FPC: Linux Mint 21.3; Lazarus 3.0 FPC 3.2.2; RaspiOS
CPU-Target: AMD 64, ARM 32
Wohnort: nr Stuttgart

Re: prüfen, ob ein bestimmtes Programm installiert ist

Beitrag von Linkat »

bei Linux führen immer viele Wege nach Rom.

Eine andere Möglichkeit (zumindest für debian-Abkömmlinge):

Code: Alles auswählen

 apt list --installed | grep lazarus


als Ausgabe erhält man:

Code: Alles auswählen

lazarus-project/now 1.8.4 amd64  [Installiert,lokal]
Linux Mint 21; Lazarus 2.2.4 FPC 3.2.2; RaspiOS

Mathias
Beiträge: 6143
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: prüfen, ob ein bestimmtes Programm installiert ist

Beitrag von Mathias »

Ich kenne da auch noch ein Tool, vorausgesetzt, du hast ein debian/ubuntu Linux.

Code: Alles auswählen

#Wo ist Paket installiert
dpkg -L netbeans
 
#Info zu Paket
dpkg -l netbeans
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

MacWomble
Lazarusforum e. V.
Beiträge: 999
Registriert: Do 17. Apr 2008, 01:59
OS, Lazarus, FPC: Mint 21.1 Cinnamon / FPC 3.2.2/Lazarus 2.2.4
CPU-Target: Intel i7-10750 64Bit
Wohnort: Freiburg

[Erledig] Re: prüfen, ob ein bestimmtes Programm installiert

Beitrag von MacWomble »

Danke, ich dachte eher daran, ob es möglich ist, direkt aus Pascal zu prüfen. Ich müsste dann wohl mit Fileexists prüfen, was aber auch nicht plattformunabhängig ist.
Aber das lässt sich wohl wirklich nicht anders als mit /usr/bin/which lösen ...
Oder ich prüfe auf einen bestimmten Pfad und lasse den Anwender dann suchen, sollte die Datei nicht da sein.
Alle sagten, dass es unmöglich sei - bis einer kam und es einfach gemacht hat.

Mathias
Beiträge: 6143
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: [gelöst] prüfen, ob ein bestimmtes Programm installiert

Beitrag von Mathias »

Danke, ich dachte eher daran, ob es möglich ist, direkt aus Pascal zu prüfen.
Gehen müsste dies eigentlich schon.
Irgendwo in der Paketverwaltung gibt es eine Liste mit den installierten Paketen.

dpkg -lMacht auch nichts anderes, als diese Liste abzufragen.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

Socke
Lazarusforum e. V.
Beiträge: 3158
Registriert: Di 22. Jul 2008, 19:27
OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 10/Linux/Raspbian/openSUSE
CPU-Target: 32bit x86 armhf
Wohnort: Köln
Kontaktdaten:

Re: [Erledig] Re: prüfen, ob ein bestimmtes Programm install

Beitrag von Socke »

MacWomble hat geschrieben:Aber das lässt sich wohl wirklich nicht anders als mit /usr/bin/which lösen ...

Schau dir mal die Funktionen FindFilenameOfCmd und FindDefaultExecutablePath in der Unit utf8process des Packages lazutils an.
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein

MacWomble
Lazarusforum e. V.
Beiträge: 999
Registriert: Do 17. Apr 2008, 01:59
OS, Lazarus, FPC: Mint 21.1 Cinnamon / FPC 3.2.2/Lazarus 2.2.4
CPU-Target: Intel i7-10750 64Bit
Wohnort: Freiburg

Re: [gelöst] prüfen, ob ein bestimmtes Programm installiert

Beitrag von MacWomble »

@Socke
das kannte ich nicht, sieht aber vielversprechend aus - Danke!
Alle sagten, dass es unmöglich sei - bis einer kam und es einfach gemacht hat.

Antworten