Die Verwendung der Abhängigkeit von crates.io funktioniert nicht.
Ich kann die Rostbindungen nur verwenden, wenn ich sie zuerst im Elektra-Projekt kompiliere und dann das kompilierte (Makros ersetzen) Verzeichnis als Pfadabhängigkeit verwende.
# Create a new cargo project
cargo new test-elektra-rs
cd test-elektra-rs
# Add the elektra dependency
echo "elektra = \"0.9\"" >> Cargo.toml
# Build the project
cargo build
Erfolgreich bauen
Fehler:
error[E0425]: cannot find function `keyIsDirectBelow` in crate `elektra_sys`
-->CARGO_DIR/registry/src/github.com/elektra-0.9.0/src/readable.rs:231:31
|
231 | unsafe { elektra_sys::keyIsDirectBelow(other.as_ref(), self.as_ref()) == 1 }
| ^^^^^^^^^^^^^^^^ help: a function with a similar name exists: `keyIsDirectlyBelow`
error[E0425]: cannot find value `KDB_O_NOCASE` in crate `elektra_sys`
--> CARGO_DIR/registry/src/github.com/elektra-0.9.0/src/keyset.rs:24:43
|
24 | const KDB_O_NOCASE = elektra_sys::KDB_O_NOCASE as elektra_sys::option_t;
| ^^^^^^^^^^^^ help: a constant with a similar name exists: `KDB_O_NONE`
error[E0425]: cannot find value `KDB_O_WITHOWNER` in crate `elektra_sys`
--> CARGO_DIR/registry/src/github.com/elektra-0.9.0/src/keyset.rs:26:46
|
26 | const KDB_O_WITHOWNER = elektra_sys::KDB_O_WITHOWNER as elektra_sys::option_t;
| ^^^^^^^^^^^^^^^ not found in `elektra_sys`
error[E0425]: cannot find value `KDB_O_NOALL` in crate `elektra_sys`
--> CARGO_DIR/registry/src/github.com/elektra-0.9.0/src/keyset.rs:28:42
|
28 | const KDB_O_NOALL = elektra_sys::KDB_O_NOALL as elektra_sys::option_t;
| ^^^^^^^^^^^ help: a constant with a similar name exists: `KDB_O_NONE`
error: aborting due to 4 previous errors
For more information about this error, try `rustc --explain E0425`.
error: could not compile `elektra`.
To learn more, run the command again with --verbose.
Vielen Dank für die Meldung dieses Problems!
Es scheint, als ob die Bindung der Kisten nicht auf dem neuesten Stand ist oder Ihre Elektra zu alt ist. ZB wurde keyIsDirectBelow in keyIsDirectlyBelow umbenannt. Es wurde vom Autor der Rust-Bindungen umbenannt, damit er uns vielleicht mehr Einblick geben kann, was hier genau falsch ist :wink:
Danke für den Bericht!
Seit dem letzten Elektra-Release von 0.9.1
bin ich noch nicht dazu gekommen, die aktualisierten Bindings auf crates.io
freizugeben. Sie verwenden also wahrscheinlich Rostbindungen 0.9
mit Elektra 0.9.1
, was nicht kompatibel ist. Ich werde das Update sehr bald veröffentlichen und dann sollten Sie keine Probleme mehr haben. Ich melde mich sobald es fertig ist.
Ich habe gerade neue elektra
und elektra-sys
Versionen für crates.io veröffentlicht. Lassen Sie mich wissen, wenn Sie weitere Probleme haben.
Es funktioniert jetzt :)
Hilfreichster Kommentar
Es funktioniert jetzt :)