2016-05-07 33 views
1

AC_INCLUDES_DEFAULT ist ein Makro, das zu einer Reihe von Standard-Header-Dateien erweitert wird, zusammen mit den zugehörigen Prüfungen autoconf. In der Tat, sagt der docs erweitert es dies:Wie verwende ich configure.ac, um den Inhalt von AC_INCLUDES_DEFAULT einzuschließen?

#include <stdio.h> 
#ifdef HAVE_SYS_TYPES_H 
# include <sys/types.h> 
#endif 
#ifdef HAVE_SYS_STAT_H 
# include <sys/stat.h> 
#endif 
#ifdef STDC_HEADERS 
# include <stdlib.h> 
# include <stddef.h> 
#else 
# ifdef HAVE_STDLIB_H 
# include <stdlib.h> 
# endif 
#endif 
#ifdef HAVE_STRING_H 
# if !defined STDC_HEADERS && defined HAVE_MEMORY_H 
# include <memory.h> 
# endif 
# include <string.h> 
#endif 
#ifdef HAVE_STRINGS_H 
# include <strings.h> 
#endif 
#ifdef HAVE_INTTYPES_H 
# include <inttypes.h> 
#endif 
#ifdef HAVE_STDINT_H 
# include <stdint.h> 
#endif 
#ifdef HAVE_UNISTD_H 
# include <unistd.h> 
#endif 

Wie kann ich configure.ac, um den Inhalt von AC_INCLUDES_DEFAULT in meinem config.h aufzunehmen?

+0

Meinst du config.h? – LPs

+0

Ähm, ja, mein Schlechter. – JesseTG

+0

AFAIK es ist automatisch generiert. Ich bekomme sie immer in config.h in meinen Projekten. Haben Sie eine Neukonfiguration des Autotool-Projekts gestartet? Wenn Sie in Eclipse sind, klicken Sie mit der rechten Maustaste auf das Projekt und wählen _reconfigure project_ – LPs

Antwort

2

AC_INCLUDES_DEFAULT ist für die Verwendung von Autoconf Check-Makros. Es gibt nichts aus, was Sie direkt in Ihrem Projekt verwenden können.

Diese Liste scheint mir obsolet. Es scheint nicht sehr wahrscheinlich, dass es irgendwelche Systeme gibt, die <strings.h>, aber nicht <string.h> mehr bieten. Ich denke, es ist im Allgemeinen besser zu überprüfen, was Sie tatsächlich verwenden; und sogar darüber hinaus nur für das, was Sie in der Praxis als nicht portabel zu den Plattformen gefunden haben, die Ihnen wichtig sind.