Hinweis: Das Forum wird geschlossen! Neue Registrierungen sind nicht mehr möglich!

 Zurück zu Pro-Linux   Foren-Übersicht   FAQ     Suchen    Mitgliederliste
Make

 
Neuen Beitrag schreiben   Auf Beitrag antworten    Pro-Linux Foren-Übersicht -> Programmieren - Allgemein
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
axeljaeger
Gast





BeitragVerfasst am: 16. Nov 2001 14:09   Titel: Make

Wenn ich mir ein Linuxprogramm irgendwo herunterlade, bekomme ich es in der Regel im Quelltext. AUßer den cpp datin gibt es da noch ein paar andere Dateien
Makefile.am
makefile.in
configure.guess
configure

usw.

Was soll das?
Ich hab schon rausgekriegt, das ./configure macht einem ein Makefile, und das kann man mit Make + cpp dateien in ein Programm übersetzen. Ich finde diese Lösung ziemlich unpraktisch, Ich könnte auch sagen umständlicher geht es nicht mehr. Ich fange an, selber in C Programme zu schreiben, und mache mir immer ein kleines Shellskript mit dem gcc aufruf + bibliothekenschalter.

Könnt ihr mir sagen:
- Was diese ganzen dateien bringen?
- Wie ich selber dieses System in meinen eigenen Programmen verwende
 

hjb
Pro-Linux


Anmeldungsdatum: 15.08.1999
Beiträge: 3236
Wohnort: Bruchsal

BeitragVerfasst am: 16. Nov 2001 15:48   Titel: Re: Make

Hi,

diese Dateien stammen von GNU autoconf/automake und bringen unabhängigkeit von der Plattform bzw. der Systemkonfiguration. Für Programmierer gibt es zahlreiche Unterschiede zwischen den verschiedenen Unixen, und wenn man die alle in seinen Skripten berücksichtigen wollte, würde man verzweifeln. Selbst Programme, die autoconf/automake nicht verwenden, machen meist etwas Ähnliches (z.B. Perl).

Wo liegen die Unterschiede zwischen den Systemen?
- Compiler (Name, Pfad, Optionen)
- libc (C-Standard-Funktionen sind überall vorhanden, aber was ist mit den Erweiterungen wie snprintf?)
- Systemaufrufe (Unterschiede System V und BSD ...)
- Utilities (Argumente, Einschränkungen)
- Installationspfade
- Wo sind Bibliotheken installiert (/usr, /usr/local, /usr/ucb, /opt...)- Workarounds für systemspezifische Bugs


und wahrscheinlich noch mehr.

Und warum verwendet man Makefiles statt Shellskripten? Weil es wesentlich effizienter ist.

autoconf/automake habe ich noch nie selbst verwendet, aber wenn du eine Entwicklungsumgebung wie KDevelop verwendest, wird das automatisch verwendet und funktioniert, ohne daß du dich drum kümmern mußt.

Gruß,
hjb
_________________
Pro-Linux - warum durch Fenster steigen, wenn es eine Tür gibt?
 
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger

bakunin



Anmeldungsdatum: 16.08.1999
Beiträge: 597
Wohnort: Lorsch (Südhessen)

BeitragVerfasst am: 16. Nov 2001 17:33   Titel: Re: Make

Hi!

Unter http://sources.redhat.com/autobook/download.html gibt es ein freies Buch über automake und autoconf. Diese zu verwenden ist für Programmierer wahnsinnig bequem, sobald man sich mal eingearbeitet hat. Ein Script, das alles neu compiliert, mag für sehr kleine Programme ausreichend sein, aber für alles etwas Umfangreichere wäre das eher ungeeignet.

Der größte Vorteil ist aber die Einheitlichkeit, die dadurch erzeugt wird. Heute kann man Dank autoconf/automake bei nahezu jedem Programm die make-Targets verwenden, die in den GNU Coding Standards definiert wurden, d.h. Dinge wie "make distclean" und "make install-strip" funktionieren immer.

Cheers,
GNU/Wolfgang
 
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen

axeljaeger
Gast





BeitragVerfasst am: 16. Nov 2001 20:44   Titel: Re: Make

also, ich hab meine cpp dateien, und wie mache ich jetzt diese ./configure und so?
 

bakunin



Anmeldungsdatum: 16.08.1999
Beiträge: 597
Wohnort: Lorsch (Südhessen)

BeitragVerfasst am: 17. Nov 2001 10:36   Titel: Re: Make

Hi!

Lies das Buch, das ich in meinem Posting erwähnt hatte. Oder lies "info autoconf" und "info automake". Das kann man nicht mal eben erklären.

Cheers,
GNU/Wolfgang
 
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen

Beiträge vom vorherigen Thema anzeigen:   
     Pro-Linux Foren-Übersicht -> Programmieren - Allgemein Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehen Sie zu:  

Powered by phpBB © phpBB Group
pro_linux Theme © 2004 by Mandaxy