rust - 如何处理 RUST 中未解决的导入“具体”问题
问题描述
我是 RUST 的新手,我正在尝试使用这个具体的库:https ://github.com/zama-ai/concrete/tree/master/concrete 。我正在尝试在 RUST 中创建一个简单的“Hello World”,以查看具体导入是否正确。我按照上述链接中的说明进行操作。
具体来说,我:
- 克隆了 GitHub 存储库。
- cd 到混凝土文件夹 (/concrete/concrete)
- 跑了“货物新的play_with_fhe”
- 用新成员“play_with_me”更新了“Cargo.toml”文件
[workspace]
members = [
"concrete",
"concrete-npe",
"concrete-core",
"concrete-csprng",
"concrete-commons",
"concrete-tasks",
"concrete-boolean",
"play_with_fhe",
]
[profile.bench]
opt-level = 3
debug = true
lto="fat"
[patch.crates-io]
concrete = {path="concrete"}
concrete-npe = {path="concrete-npe"}
concrete-core = {path="concrete-core"}
concrete-csprng = {path="concrete-csprng"}
concrete-commons = {path="concrete-commons"}
concrete-boolean = {path= "concrete-boolean"}
play_with_fhe = {path= "play_with_fhe"}
- cd 到 "/concrete/concrete/play_with_fhe" 并更新 "Cargo.toml" 文件
[package]
name = "play_with_fhe"
version = "0.1.11"
authors = ["FHE Curious"]
edition = "2018"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
concrete = "^0.1.11"
- cd 到 /concrete/concrete/play_with_fhe_/src 并创建一个运行简单代码的 main.rs 文件:
use concrete::*;
fn main() {
println!("Hello, world!");
}
- 当我尝试用 rustc main.rs 编译它时,我被告知:
error[E0432]: unresolved import `concrete`
--> main.rs:2:5
|
2 | use concrete::*;
| ^^^^^^^^ maybe a missing crate `concrete`?
error: aborting due to previous error
For more information about this error, try `rustc --explain E0432`.
我该如何解决这个问题?任何意见,将不胜感激。
解决方案
由于您正在尝试创建自己的 hello world 项目,因此无需克隆存储库。您只需要创建一个项目,将具体作为依赖项包含在内,然后将其导入。这些说明在具体页面上(如 Stargateur 注释):
% cargo new play_with_fhe
% cd play_with_fhe
添加concrete
到 Cargo.toml 中的依赖项:
[package]
name = "play_with_fhe"
version = "0.1.0"
edition = "2018"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
concrete = "^0.1" # <--- This is the only change you make. The rest is template.
然后添加use cargo::*
到 main.rs 的顶部,并构建它:
% cargo build
这将安装所有内容。有关 Cargo 的更多信息,请参阅Rust By Example 中的依赖关系。
请注意,除非您使用的是 x86 架构,否则此软件包可能无法正确构建。例如,它不会在没有 Rosetta2 的 Apple M1 上运行。
推荐阅读
- reactjs - 反应服务器渲染
- spring - 将 JMS 消息创建为 JSON
- floating-point - 在实践中我应该使用什么值来近似函数的梯度?
- qt - 从 C++ 导入时找不到“UIKit/UIKit.h”文件
- php - 如何使用 php 在数据库中发送多个复选框值
- cmd - CMD - 从文件 TSV 导入字符串
- android-location - 在 Amazon Fire TV Stick 中获取设备位置
- python - 鼠标双击时没有鼠标按下/释放事件
- 3d - Three.js - 3D 空间中的 2D 对象(通过 Vertices)
- java - SparkSession 无法解析为类型