Hallo,
ich habe hier ein kleines Projekt/Spiel und bin gerade dabei von handgeschriebenen Makefiles auf autoconf und automake umzusteigen. Kompilieren, linken und so weiter funktionieren auch super, obwohl ich mehrer Bibliotheken verwende . Der Umgang mit "normalen Dateien" (Einstellungen, Graphiken, ...) jedoch ist mir nicht ganz klar und er wird auch in keinem der Tutorials die ich gelesen habe vernünfig behandelt.
Ich habe zum Beispiel einen Ordner gfx/ mit einer Reihe von .tga-Graphiken drin. Die sollen in dem durch "make dist" erstellten tarball enthalten sein und dann von "make install" an die "richtige Stelle" im Dateisystem kopiert werden. Außerdem muss mein Programm (C++) die Bilder dann auch wieder finden können.
In dem Ordner gfx/ habe ich ein Makefile.am erstellt, doch weiß ich nicht was ich da rein schreiben soll.
Welch Suffixe muss ich verwenden damit die Dateien an der "richtigen Stelle" landen? Was ist die "Richtige stelle"?
Ich denke folgende Orte kämen unter Linux in Frage:
/usr/share/mein-spiel/gfx/
/usr/games/mein-spiel/gfx/
Wie findet mein Programm die Dateien dann wieder? Mit einem geeigneten Eintrag in der config.h.in?
Das selbe Problem ergibt sich auch noch mal für Konfigurationsdateien. Da sollte es eine systemweite Datei geben und dann benutzerspeziefische Dateien im Heimatverzeichnis angelegt werden wenn der Nutzer zum ersten mal seine Einstellungen speichert.
Dann soll das Projekt auch noch nach Windows portabel sein. Der Quellcode ist es schon, aber da müssten alle Bilder in Unterordnern des Projekt-Ordners landen und die Konfigurationsdateien unter "Benutzer und Einstellungen"...
Wäre super wenn mir jemand einen Hinweis geben könnte - Danke!
GNU Autotools - Graphiken installeren und wieder finden
-
- Beiträge: 441
- Registriert: 12.10.2005 23:09:28
- Lizenz eigener Beiträge: MIT Lizenz
-
Kontaktdaten:
GNU Autotools - Graphiken installeren und wieder finden
"Linux supports the notion of a command line or a shell for the same reason that only children read books with only pictures in them." - Bill Garrett
-
- Beiträge: 441
- Registriert: 12.10.2005 23:09:28
- Lizenz eigener Beiträge: MIT Lizenz
-
Kontaktdaten:
Re: GNU Autotools - Graphiken installeren und wieder finden
Die Grafiken installiere ich jetzt mittels:
Ich bin mir aber nach wie vor nicht sicher ob das so ok ist, ich würde mich deshalb freuen wenn noch jemand was dazu sagen könnte.
Die große ungelöste Frage ist:
Wie findet mein Programm anschließend seine Dateien wieder
Zusätzlich zu dem Problem das die Dateien bei verschiedenen Systemen in verschiedenen Ordnern landen gibt es ja für den Benutzer auch noch die Möglichkeit mittels
zu installieren. Das passiert ja nachdem Kompilieren, daher lässt sich das auch nicht mit precompiler directives lösen.
Code: Alles auswählen
gfxdir = $(pkgdatadir)/gfx
dist_gfx_DATA = $(top_srcdir)/gfx/*.tga
Die große ungelöste Frage ist:
Wie findet mein Programm anschließend seine Dateien wieder
Zusätzlich zu dem Problem das die Dateien bei verschiedenen Systemen in verschiedenen Ordnern landen gibt es ja für den Benutzer auch noch die Möglichkeit mittels
Code: Alles auswählen
make DESTDIR=... install
zu installieren. Das passiert ja nachdem Kompilieren, daher lässt sich das auch nicht mit precompiler directives lösen.
"Linux supports the notion of a command line or a shell for the same reason that only children read books with only pictures in them." - Bill Garrett