Vielleicht kennen einige von Euch die Funktion "stricmp". Die steht bei einigen Compilern zur Verfügung, ist jedoch nicht Teil des ANSI-Standards (GCC hat sie auch nicht).
Da ich diese Funktion in einem Programm benötige, habe ich mir selbst ein stricmp geschrieben und in eine Datei stricmp.c gespeichert.
Ich möchte nun, dass diese Datei nur kompiliert und in das Programm gelinkt wird, wenn sie auf dem aktuellen System nicht zur Verfügung steht. Dazu habe ich in der configure.ac die Zeile
AC_REPLACE_FUNC( stricmp )
eingetragen, in der Hoffnung, dass configure für den Rest sorgen wird. Tut es aber nicht. Es erkennt zwar, dass stricmp nicht zur Verfügung steht, sorgt aber auch nicht für die Kompilierung.
Was mache ich wohl falsch?
AC_REPLACE_FUNC
Re: AC_REPLACE_FUNC
Hi!
Laut Dokumentation wird die .o-Datei nicht automatisch hinzugefügt, das musst du also manuell machen und dann die Funktion in #ifndef HAVE_STRICMP und #endif einschließen.
Übrigens hat das mit dem Compiler nicht viel zu tun, Funktionen sind in der C-Bibliothek definiert, nur ganz wenige Funktionen werden (aus Performancegründen) von GCC direkt bereitgestellt.
Cheers,
GNU/Wolfgang
Laut Dokumentation wird die .o-Datei nicht automatisch hinzugefügt, das musst du also manuell machen und dann die Funktion in #ifndef HAVE_STRICMP und #endif einschließen.
Übrigens hat das mit dem Compiler nicht viel zu tun, Funktionen sind in der C-Bibliothek definiert, nur ganz wenige Funktionen werden (aus Performancegründen) von GCC direkt bereitgestellt.
Cheers,
GNU/Wolfgang
Re: AC_REPLACE_FUNC
Gibt es eine empfehlenswerte Literatur (Buch oder Online) die beschreiben wie man Autoconf/Automake in eigenen Projekten einsetzt ?
Re: AC_REPLACE_FUNC
Hi Descartes!
Ja, es gibt ein (freies!) Buch, das man entweder unter http://sources.redhat.com/autobook/ herunterladen kann oder auch als Papierversion kaufen. Die Originaldokumentation der Programme fand ich nicht sooo berauschend.
Cheers,
GNU/Wolfgang
Ja, es gibt ein (freies!) Buch, das man entweder unter http://sources.redhat.com/autobook/ herunterladen kann oder auch als Papierversion kaufen. Die Originaldokumentation der Programme fand ich nicht sooo berauschend.
Cheers,
GNU/Wolfgang