Sie können überprüfen, config.logwelche tatsächlichen Befehle dort ausgeführt oder welche Programme kompiliert werden.
Myaut
Antworten:
51
Dies kommt von automake , speziell von seinem AM_SANITY_CHECKMakro , das von aufgerufen AM_INIT_AUTOMAKEwird und normalerweise früh aufgerufen wird configure.ac. Der Kern dieses Makros ist:
Stellen Sie sicher, dass der Pfad zum Quellverzeichnis keine bestimmten "unsicheren" Zeichen enthält, die in Makefiles von Shell-Skripten möglicherweise nur schwer korrekt enthalten sind.
Überprüfen Sie, ob dies lszu funktionieren scheint.
Stellen Sie sicher, dass eine neue Datei, die im Erstellungsverzeichnis erstellt wurde, neuer ist als die configureDatei. Wenn dies nicht der Fall ist (normalerweise, weil die Uhr auf dem Erstellungssystem nicht richtig eingestellt ist), schlägt der Erstellungsprozess wahrscheinlich fehl, da Erstellungsprozesse normalerweise auf generierten Dateien mit einem aktuelleren Zeitstempel als den Quelldateien basieren, aus denen sie generiert werden.
Warum lsspeziell? Sollen nur grundlegende ausführbare Dateien getestet werden, die verfügbar und funktionsfähig sind, oder werden sie lsselbst im Make-Prozess verwendet?
Terdon
2
@terdon Einige automake-Vorlagen verwenden ls. Das AM_SANITY_CHECKMakro selbst lsprüft die relativen Zeiten configureund eine temporäre Datei (wird nicht verwendet, test -ntda nicht alle Shells über diese verfügen).
config.log
welche tatsächlichen Befehle dort ausgeführt oder welche Programme kompiliert werden.Antworten:
Dies kommt von automake , speziell von seinem
AM_SANITY_CHECK
Makro , das von aufgerufenAM_INIT_AUTOMAKE
wird und normalerweise früh aufgerufen wirdconfigure.ac
. Der Kern dieses Makros ist:ls
zu funktionieren scheint.configure
Datei. Wenn dies nicht der Fall ist (normalerweise, weil die Uhr auf dem Erstellungssystem nicht richtig eingestellt ist), schlägt der Erstellungsprozess wahrscheinlich fehl, da Erstellungsprozesse normalerweise auf generierten Dateien mit einem aktuelleren Zeitstempel als den Quelldateien basieren, aus denen sie generiert werden.quelle
ls
speziell? Sollen nur grundlegende ausführbare Dateien getestet werden, die verfügbar und funktionsfähig sind, oder werden siels
selbst im Make-Prozess verwendet?ls
. DasAM_SANITY_CHECK
Makro selbstls
prüft die relativen Zeitenconfigure
und eine temporäre Datei (wird nicht verwendet,test -nt
da nicht alle Shells über diese verfügen).