Ich habe die folgenden Fehler beim Versuch, glib mit den folgenden Konfigurationsparametern zu kompilieren:
./configure --prefix = $ HOME --host = arm-hisiv400-linux
checking for growing stack pointer... configure: error: in `/home/aa/Hi3536_SDK_V2.0.4.0/glib-2.50.0':
configure: error: cannot run test program while cross compiling
See `config.log' for more details
Gibt es eine Möglichkeit, diese Tests zu deaktivieren, damit mein Cross-Compile-Prozess abgeschlossen werden kann?
cross-compilation
glib
emddev
quelle
quelle
./configure --help
könnte helfen.Antworten:
In dieser Situation wird standardmäßig eine Autoconf-Site-Standarddatei verwendet, die die entsprechenden Werte für die Tests enthält,
configure
die ausgeführt werden sollen.In diesem speziellen Fall
configure
wird versucht festzustellen, in welche Richtung der Stapel wächst:Sie würden diesen Code also gegenseitig kompilieren, auf Ihrer Zielplattform ausführen und den Exit-Code (
echo $?
) untersuchen. Erstellen Sie beispielsweise eine Site-Standarddatei für Ihre Zielarchitekturconfig.arm-hisiv400-linux
und fügen Sie eine Zeile mit hinzu(wenn der Exit-Code oben 0 war) oder
(wenn der Exit-Code 1 war).
Führen Sie dann
configure
mitCONFIG_SITE
Hinweis auf den vollständigen Pfad der Site Standarddatei , die Sie gerade erstellt haben :configure
sollte den Wert aus der Site-Standarddatei verwenden und den Test für den Stapel überspringen. Es wird wahrscheinlich auf den nächsten Test fehlschlagen , die ein Programm für das Ziel kompiliert ausgeführt werden muss, aber Sie können das in der gleichen Art und Weise zu beheben, mehrere Einträge auf der Website Standarddatei (solange das Hinzufügenconfigure.ac
AnwendungenAC_CACHE_VAL
umAC_TRY_RUN
).quelle