Fehler beim Bauen
Die häufigsten Gründe, aus denen ein Bau scheitert, mit der Meldung, an der Sie sie erkennen.
OpenSSL library directory does not exist
Meldung: OpenSSL library directory does not exist: ["…\openssl-3.6.0\win\bin\lib"]
Ursache: Die Windows-Bauform sucht OpenSSL am Vorgabepfad aus win/.cargo/config.toml, weil
OPENSSL_DIR nicht gesetzt ist.
Abhilfe: OPENSSL_DIR auf Ihr OpenSSL setzen; siehe
Eigenes OpenSSL einbinden.
could not find native static library oder unaufgelöste Symbole von OpenSSL
Ursache: Das OpenSSL-Verzeichnis enthält nur statische Bibliotheken, der Bau erwartet aber dynamische, oder umgekehrt.
Abhilfe: Bei statischen Bibliotheken OPENSSL_STATIC=1 setzen. Prüfen Sie außerdem, dass
Bibliotheken und Rust-Ziel dieselbe Architektur haben.
Der OpenSSL-Bau bricht unter Windows ab
Meldung: Fehler aus openssl-src, häufig mit perl oder Configure im Text.
Ursache: Der mitgebaute OpenSSL-Bau der L4Re-Bauform braucht Strawberry Perl und den MSVC-Compiler. Das Perl aus Git für Windows oder MSYS2 steht oft zuerst im Suchpfad und scheitert.
Abhilfe: Strawberry Perl an den Anfang des Suchpfads stellen, etwa
$env:PATH = "C:\Strawberry\perl\bin;" + $env:PATH, und in einer Konsole bauen, in der der
MSVC-Compiler gefunden wird. Alternativ ein vorgebautes OpenSSL mit openssl-system einbinden.
linker 'aarch64-linux-gnu-gcc' not found
Ursache: Für das Ziel aarch64-unknown-linux-gnu fehlt der Querübersetzer.
Abhilfe: Unter Debian oder Ubuntu gcc-aarch64-linux-gnu installieren und
rustup target add aarch64-unknown-linux-gnu ausführen.
Der Bau aus der Wurzel des Repositorys findet nichts
Meldung: could not find Cargo.toml
Ursache: Die Wurzel ist kein Cargo-Workspace. Jede Bauform ist ein eigenes Paket mit eigener
.cargo/config.toml.
Abhilfe: In l4re oder win wechseln und dort bauen.
Der Test test_pqc_availability scheitert
Meldung: linked OpenSSL provides no ML-DSA
Ursache: Das gebundene OpenSSL ist älter als 3.5.
Abhilfe: Ein OpenSSL ab 3.5 einbinden. Ohne diesen Test fiele der Mangel erst im Betrieb auf, an scheiternden Post-Quanten-Anfragen.