Gibt es Frameworks für Unix-Tools?

23/10/2010 - 03:09 von Egon Schmid | Report spam
Es gibt gewisse Dinge, die haben (fast) alle Unix-Pakete/Programme
gemeinsam.

Bei der Installation:
==Mit "sh configure [OPTIONS]" oder "./configure [OPTIONS]" wird das
System analysiert und ein Makefile generiert.

Danach kann man mittels "make install" die Software installieren.

Der Befehl selbst:
==
Jeder Befehl wertet erst mal die Argumente aus.
Dabei haben sich manche Argumente standardisiert.

gibt eine Hilfe-Seite mit Liste der Optionen aus.
Manche Programme berücksichtigen sogar die locale-Einstellungen.

Lustig:Bei mir gibt "grep --help" den Text teils deutsch, teils
englisch aus: :)

gibt die Versionsnummer aus

Gibt es Frameworks, mit denen man so Shell-Tools schnell erstellen kann?

Frameworks sind so Grundgerüste, bei denen viele Funktionen und Ablàufe
schon zur Verfügung stehen oder diese stark vereinfacht werden.
Das Ziel von Frameworks ist, dass man nicht alles neu programmieren
muss, und Programmcode teils 1:1 wiederverwenden kann.
Der Nachteil von Frameworks ist jedoch, dass die Programme oft langsamer
sind und mehr RAM benötigen.

So könnte es beispielsweise eine Funktion "registerOption" geben mit den
Argumenten:

- char * bzw. String option -> Die Option, z.B. "--version"
- char * shortcut -> das Kürzel, z.B. -v
- char * infotext -> Der Infotext, der bei "--help" erscheint
- function callback -> eine Callback-Funktion, die bei Angabe der Option
aufgerufen wird

Gibt es solche Frameworks für Shell-Commands, eventuell auch für
Daemons? Daemons haben ein Config-File unter /etc/ und besitzen auch
meist einen Listen-Port, welcher in diesem Config-File angegeben werden
kann.

Grüße

Egon Schmid
 

Lesen sie die antworten

#1 felix
23/10/2010 - 08:54 | Warnen spam
* Egon Schmid :
Es gibt gewisse Dinge, die haben (fast) alle Unix-Pakete/Programme
gemeinsam.

Bei der Installation:
==> Mit "sh configure [OPTIONS]" oder "./configure [OPTIONS]" wird das
System analysiert und ein Makefile generiert.

Danach kann man mittels "make install" die Software installieren.



GNU Autotools. Die sind ein bisschen problematisch zu erlernen, aber
wenn man sich erstmal zurechtfindet (und so halbwegs die nicht ganz
gelàufige Makrosprache M4 kapiert hat) sind die sehr hilfreich, vor
allem wenn es um maximale portabilitàt des Build-Systems geht.

Hilfreiche Einführung z.B. hier:
<http://sourceware.org/autobook/auto...k.html>

[Ergànzung: Nimm auf jeden Fall ein Build-System das Makefiles erstellt,
die bei der Installation DESTDIR verstehen, das erleichtert es ungemein,
deine Software auch einmal zu paketieren (.deb, .rpm). GNU Autotools
sind in der Hinsicht geeignet.]

Alternativen gibt es natürlich auch, hier ist glaube ich vor allem cmake
bekannt.

Der Befehl selbst:
==>
Jeder Befehl wertet erst mal die Argumente aus.
Dabei haben sich manche Argumente standardisiert.

gibt eine Hilfe-Seite mit Liste der Optionen aus.
Manche Programme berücksichtigen sogar die locale-Einstellungen.

Lustig:Bei mir gibt "grep --help" den Text teils deutsch, teils
englisch aus: :)

gibt die Versionsnummer aus

Gibt es Frameworks, mit denen man so Shell-Tools schnell erstellen kann?



Nicht exakt was du suchst, aber vielleicht hilft dir die popt library
weiter.

Grüße,
Felix

Felix Palmen (Zirias) + [PGP] Felix Palmen
web: http://palmen-it.de/ | http://palmen-it.de/pub.txt
my open source projects: | Fingerprint: ED9B 62D0 BE39 32F9 2488
http://palmen-it.de/?pg=pro + 5D0C 8177 9D80 5ECF F683

Ähnliche fragen