Umgebungsvariablen¶
Umgebungsvariablen können verwendet werden, um das Verhalten von meson-python sowie das Verhalten von Meson und anderen Werkzeugen, die während des Builds verwendet werden könnten, zu beeinflussen. Diese Seite listet alle Umgebungsvariablen auf, die direkt von meson-python verwendet werden.
Meson empfiehlt die Verwendung von Kommandozeilenargumenten anstelle von Umgebungsvariablen, unterstützt aber eine Reihe von Umgebungsvariablen zur Kompatibilität mit anderen Build-Systemen.
Andere Umgebungsvariablen können beeinflussen, wie andere Werkzeuge, die während der Einrichtungs- oder Build-Schritte verwendet werden, funktionieren. Beispielsweise unterstützt pkg-config PKG_CONFIG_PATH, was den Suchpfad für .pc-Dateien beeinflusst, die die verfügbaren Abhängigkeiten beschreiben.
Warnung
Conda setzt eine Reihe von Umgebungsvariablen während der Aktivierung der Umgebung für die Compiler-/Linkerauswahl (CC, CXX, FC, LD) und für Compile-/Link-Flags (CFLAGS, CXXFLAGS, FFLAGS, LDFLAGS), wenn Compiler in einer Conda-Umgebung installiert sind. Dies kann unerwartete Nebenwirkungen haben (siehe z.B. den Hinweis in Verwendung von Debug-Builds).
Von meson-python verwendete Umgebungsvariablen¶
- ARCHFLAGS¶
Diese Umgebungsvariable wird zur Unterstützung der plattformübergreifenden Kompilierung auf macOS auf eine Weise verwendet, die mit setuptools kompatibel ist. Sie wird auf allen anderen Plattformen ignoriert. Sie kann auf
-arch arm64oder-arch x86_64gesetzt werden, um für die Architekturen arm64 bzw. x86_64 zu kompilieren. Das Setzen dieser Umgebungsvariable auf einen anderen Wert wird nicht unterstützt.Die macOS-Toolchain ermöglicht die plattformübergreifende Kompilierung durch Übergabe des
-arch-Flags an die Compiler.meson-pythoninspiziert den Inhalt dieser Umgebungsvariable und synthetisiert eine Meson Cross-Build-Definitionsdatei mit dem entsprechenden Inhalt und übergibt sie über die Option--cross-fileanmeson setup.Die Unterstützung für diese Umgebungsvariable wird nur aus Kompatibilitätsgründen mit vorhandenen Werkzeugen, insbesondere cibuildwheel, aufrechterhalten und ist nicht die empfohlene Lösung für plattformübergreifende Kompilierung.
- FORCE_COLOR¶
Das Setzen dieser Umgebungsvariable auf einen beliebigen Wert erzwingt die Verwendung von ANSI-Escape-Sequenzen zur Farbgebung der Konsolenausgabe von
meson-python. Das Setzen sowohl der UmgebungsvariablenNO_COLORals auchFORCE_COLORist ein Fehler.
- MACOSX_DEPLOYMENT_TARGET¶
Diese Umgebungsvariable wird verwendet, um die Ziel-macOS-Plattform-Hauptversion an die Xcode-Entwicklungswerkzeuge zu übergeben. Wenn diese Umgebungsvariable gesetzt ist, verwendet
meson-pythondie angegebene macOS-Version für den Python-Wheel-Plattform-Tag anstelle der macOS-Version des Build-Computers.Diese Variable muss nur mit macOS-Hauptversionen gesetzt werden:
10.9bis10.15,11,12,13, ...Bitte beachten Sie, dass sich die macOS-Versionierung ab macOS 11 geändert hat. Für macOS 10 ist das Versionierungsschema
10.$major.$minor. Ab macOS 11 ist es$major.$minor.$bugfix. Wheel-Tags und Deployment-Targets sind derzeit so konzipiert, dass sie nur mit der Hauptversionsnummer Kompatibilität angeben.Eine andere Möglichkeit, die Ziel-macOS-Plattform anzugeben, ist die Verwendung der Compile- und Link-Flags
-mmacosx-version-min. Es ist jedoch fürmeson-pythonnicht möglich, dies zu erkennen, und es wird der Python-Wheel-Plattform-Tag nicht entsprechend gesetzt.
- MESON¶
Gibt die zu verwendende
meson-Ausführungsdatei oder das Skript an. Sie überschreibttool.meson-python.meson. Weitere Informationen finden Sie in Projekteinstellungen.
- MESONPY_EDITABLE_VERBOSE¶
Das Setzen dieser Umgebungsvariablen auf einen beliebigen Wert ermöglicht die Weiterleitung von Meldungen, die während des Projekt-Rebuilds, der durch Importe von editierbaren Wheels ausgelöst wird, die von
meson-pythongeneriert wurden, an die Konsole gesendet werden. Weitere Informationen finden Sie im Leitfaden Editierbare Installationen.
- NINJA¶
Gibt die zu verwendende ninja-Ausführungsdatei an. Sie kann auch zur Auswahl von ninja-Alternativen wie samurai verwendet werden.
- NO_COLOR¶
Das Setzen dieser Umgebungsvariable auf einen beliebigen Wert deaktiviert die Verwendung von ANSI-Terminal-Escape-Sequenzen zur Farbgebung der Konsolenausgabe von
meson-python. Das Setzen sowohl der UmgebungsvariablenNO_COLORals auchFORCE_COLORist ein Fehler.