问题标签 [rust-crates]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
634 浏览

rust - 有没有办法让拍手款待-?和 -h 一样吗?

clap crate 实现了选项的内置行为-h,但它似乎没有为-?. 有没有办法告诉它这样做?

0 投票
1 回答
1158 浏览

rust - Xargo 不夜跑

我正在尝试按照一些说明在 GPU 上运行我的 Rust 代码。但是,我无法编译它。

尽管我每晚安装 Rust,Xargo 仍然声称没有安装 Rust 每晚。我尝试卸载并重新安装 Xargo 两次,但没有任何改变。

输出:

输出:

0 投票
0 回答
365 浏览

rust - Rust 中的外部依赖项未从 cargo run 命令加载

我正在尝试复制我在教程中找到的代码。我在 Cargo.toml 文件中使用以下依赖项:

cargo run从项目src目录执行时收到以下错误消息:

在出现错误之前,它会在“更新注册表”处挂起大约 15 分钟。我猜版本控制是问题所在,但是我直接使用的教程指出它们包含它们是为了避免版本与示例代码不匹配。

我试图寻找答案,但错误代码太模糊,无法找到任何东西。

添加的结果cargo run --verbose

我现在得到:

cargo当我分别使用列出的依赖项和版本编译/运行时"*"

0 投票
1 回答
1130 浏览

multithreading - 什么是 Rust 等价于 Intel 的 tbb::concurrent_queue?

我正在寻找与Rust 中concurrent_queue英特尔的tbb模块等效的模块。我找到了一些板条箱:

  1. 多队列

  2. 两锁队列

  3. 横梁双端

乃至

  1. 期货池

  2. 线程池

我觉得他们都在做类似的事情,但是在他们的文档中,他们似乎使用不同的算法来实现。

虽然我不太了解 C++ 编程,但我很确定 tbb'sconcurrent_queue是一个非常快速的 MPMC 队列实现。Mutex如果仅将队列容器包装在 a 中(我的一位朋友对此进行了测试),则无法接近该性能。

由于效率(延迟和吞吐量)是我关心的主要问题,我应该在 Rust 中使用什么?队列可以是有界或无界的,我可能需要获取-发布排序。

0 投票
2 回答
599 浏览

multidimensional-array - 如何在 &ndarray::Array1 之间做减法和 &mut 数组 1?

我发现不可能使用ndarray crate在不可变数组引用和可变数组引用之间做减法:

我得到的错误信息是:

我不明白这两种类型是什么意思,但是有什么特殊的原因为什么没有实现呢?

0 投票
1 回答
1255 浏览

image - Rust - 图像箱:保存图像缓冲区的问题

在为图像箱提供的示例中,我有一个与分形示例(“6.2 生成分形”部分,https://github.com/PistonDevelopers/image )相关的问题

1)在线

我收到以下编译错误消息(rustc 1.25.0):

感谢您的帮助!

2)另外注意我必须改变

在示例的开头。也许 crate num_complex 不再存在?

0 投票
0 回答
235 浏览

rust - 对外部板条箱感到困惑

所以我目前正在官方网站上学习 Rust 语言,我正处于第 12 章的中间,他们希望我将一些代码src/main.rssrc/lib.rs. 起初,我在二进制 crate 中创建了一个名为“minigrep”的库 crate:

  • 迷你grep
  • 源代码
    • main.rs

但 Rust 找不到。接下来我尝试将它移动到 src 目录中:

  • 源代码
    • 迷你grep
    • main.rs

关于 Rust 如何检测外部 crate 的任何帮助?

0 投票
1 回答
886 浏览

rust - Cargo 生态系统中的“箱子”到底是什么?与 crates.io 上的内容的映射是什么?

我对 crates.io 上托管的确切内容有点困惑(“板条箱”是指代这些内容的正确方法)?我的理解是 crate 是 Rust 中的一个编译单元,但是 crates 和 crates.io 上的映射是什么?例如,关于宏的 Rust 编程语言附录说,因为每个 crate 只能有一个过程宏:

我们的两个 crate 紧密相关,所以我们在 crate 的目录中创建程序宏hello_macrocrate。如果我们更改 中的特征定义hello_macro,我们也必须更改程序宏的实现hello_macro_derive。这两个 crate 需要单独发布,使用这些 crate 的程序员需要将两者都添加为依赖项并将它们都纳入范围。我们可以将 hello_macro cratehello_macro_derive用作依赖项并重新导出过程宏代码。但是我们构建项目的方式使程序员hello_macro即使不想要该derive功能也可以使用。

它必须在 crates.io 上单独发布。这似乎很清楚: crates.io 上的 crate 与本地 crate 相同,并且映射是一对一的。

但是,当讨论同时包含可执行文件和库的项目时,这意味着它们是单独的 crate,但不需要单独发布。例如,sccache 存储库同时具有 main.rs 和 lib.rs。单独的二进制 crate 是否实际上并未存储在 crates.io 上并且仅驻留在 repo 中?那么 cargo install 是如何确定要安装什么的呢?

什么是“包”?

我尝试cargo package使用包含二进制和库目标的示例项目运行。两者都被添加到.cargo文件中(顺便说一下,.cargo 档案的确切格式是否记录在任何地方?)。这仍然让我感到困惑。我们可以将多个 crate 作为一个包的一部分发布吗?那么我们是否应该将 crates.io 上存储的内容称为?我是否可以假设每个包可以包含多个二进制包但只有一个库包?这是我目前的理解。

0 投票
1 回答
1246 浏览

rust - 在 Travis CI 上交叉编译简单 crate 时未找到 Linker cc

x86_64作为我的一个项目的一部分,我必须i686在 Linux 上交叉编译一个 Rust crate 。我目前正在为此使用 Travis CI,它带有一个简单的Hello World板条箱(默认的二进制板条箱)。我对相关矩阵条目的 Travis CI 配置是:

不幸的是,当我将此配置推送到 Travis CI 时,出现构建错误

我该如何解决?

0 投票
1 回答
205 浏览

compiler-errors - 为什么我不能将 main.rs 添加到 crate 的源代码并导入结构?

为什么我不能克隆一个 git 项目,添加一个main.rs并导入其中一个结构?编译器抱怨导入未知,如果我让它知道它抱怨库文件无法编译。

我的文件

我的“代码”:

结构

如果我main.rs按照所有可用的建议进行编译,那么我会破坏我没有触及的库: