问题标签 [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 投票
1 回答
495 浏览

module - 我可以在不为每个文件引入模块的情况下将 crate 拆分为多个文件吗?

我发现的所有示例都创建一个lib.rs,然后在该文件中创建mod foo;mod bar;对于每个文件foo.rsbar.rs依此类推。

基本上我想要的是将我的 crate 拆分为多个文件,但不必为每个文件引入大量模块。这对 Rust 来说是不可能的吗?

0 投票
1 回答
3999 浏览

macros - 如何在另一个箱子中使用宏?

我正在努力使我的 rust lib 中的宏可用于其他 rust 项目。

这是我目前如何尝试完成这项工作的一个示例。

lib.rs

macros.rs

other_project.rs

我在正确的轨道上吗?我一直在尝试使用 std::macros 作为参考,但我似乎运气不佳。有什么明显的我失踪了吗?

0 投票
1 回答
2828 浏览

rust - 是否可以在 Rust 的不同源文件中有一个模块

这实际上是一个两部分的问题:

  1. 我可以在 Rust 的单独文件中拥有一个模块吗?

在此处输入图像描述

这是我的文件布局。是否可以有一个logging模块并在该模块内定义一组结构/特征,但在单独的物理文件(记录器,sql)中?

如果可能的话,这样的项目可以用当前的 Cargo 构建吗?

而且,如果可能的话,我如何logging在我的 app.rs 中引用我在模块中定义的结构?

我正在使用:rustc 0.12.0-pre-nightly (cf1381c1d 2014-07-26 00:46:16 +0000)

0 投票
1 回答
619 浏览

postgresql - Rust cargo 找不到 postgres 包

我有这个Cargo.toml

运行时,这导致以下输出cargo build

我在这里想念什么?

0 投票
2 回答
25672 浏览

rust - 如何清除货物缓存?

当我运行时cargo build,文件夹中存储了各种库/usr/local/lib/rustlib/

清除这些库的正确方法是什么?我可以rm手动处理这些文件,但这是否正确?我注意到这/usr/local/lib/rustlib/manifest是一个包含所有库的填充文件路径列表的文件,因此如果我手动删除这些文件可能会破坏某些内容。

0 投票
1 回答
3490 浏览

rust - 如何解决货物中的“`package`的多个匹配箱”?

运行时cargo build

然后列出候选人:

  • ./target/deps/liburl-11a95471847b9e04.rlib
  • /usr/local/lib/rustlib/x86_64-unknown-linux-gnu/lib/liburl-4e7c5e5c.{so,rlib}

...然后中止,因为它无法决定哪一个。

如何解决此问题或解决此问题?


笔记:

这个问题 和这个提交 似乎与问题有关,来自评论:


安装细节:

Cargo.toml

(从http://nickel.rs/getting-started.html复制并添加了一个额外的依赖项)

我得到的完整错误是:

0 投票
3 回答
4161 浏览

node.js - 如何链接到本地​​ Rust 库?(类似于 npm 链接)

在 node 中开发库时,如果您希望针对仅存在于本地的库进行开发,在您之前npm publish,您可以使用npm link /path/to/other/node_library.

Rust 的等价物是什么?如何创建另一个链接到 bar 库的 foo 可执行文件,而不先将 bar 库推送到 git 远程?

官方的 rust 教程展示了如何使用 raw 来做到这一点rustc,如何做到这一点Cargo.toml

cargo 文档向您展示了如何构建一个库,但现在如何链接到一个没有远程存储库的库。)

0 投票
1 回答
85 浏览

rust - 生成 rlib 时没有哈希或版本

官方文档rustbyexample.com上都指出,在编译库 ( --crate-type=lib) 时,生成的库文件的文件名中将包含一个哈希,例如libworld-<HASH>-0.42.rlib.

但是在我的盒子上尝试时,它不会在文件名上生成任何哈希(或版本),它只是“lib”+库名+“.rlib”(如libworld.rlib)。

这是官方改的吗?

顺便说一句,我在 Ubuntu 14.04 上使用 0.12.0-pre-nightly 版本。

0 投票
1 回答
979 浏览

multithreading - Rust 中的 std::sync::Arc of trait

我正在尝试实现用于制作 TCP 服务器的库。

这是一个有问题的非常简化的代码:

编译器完全忽略了我的Handler + Sized. 如果我使用 trait Handler 实现结构并尝试serve使用此结构调用,则有关大小的此类建议也将被忽略(http://is.gd/OWs22i)。

我怎样才能用多线程实现一个模板函数来接受不同的处理程序?

0 投票
2 回答
2368 浏览

rust - 如何访问 crate 的“tests”目录中的导出函数?

如何在创建的“测试”目录中访问我的库导出函数?

src/relations.rs:

测试/test.rs:

如果我添加建议extern crate relations的,错误是:

我想relations在这个单独的tests/test.rs文件中测试我的。我该如何解决这些use问题?