问题标签 [rust-cargo]

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 回答
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 投票
2 回答
3585 浏览

rust - 配置/安装使用 Rust Cargo 作为构建系统的软件的预期/计划方式是什么?

现有的构建系统通常具有某种安装目标,可以手动使用(用于安装在 /usr/local 或用户可以访问的其他位置)或自动使用(通过基于二进制的发行版的包构建系统或基于源的包管理器那些)。

安装使用 Cargo 的软件的预期方式是什么?的模拟make install应该是什么样子?

Cargo 本身使用额外的 configure/make 东西来处理配置、系统依赖的检测、运行cargo build和安装。

对于使用 Cargo 构建的任何其他软件,这是正确的方法吗?这意味着是否有计划由 Cargo 本身来完成这项任务,或者 Cargo 是否仅用作依赖项获取和编译的工具,而无需对已安装的 deps/安装进行任何配置/检测?

或者是否有计划添加此功能?

0 投票
1 回答
899 浏览

workflow - Rust 库开发工作流程

在 Rust (+ Cargo) 中开发库时,如何实现快速的重新编译/测试周期?

在开发应用程序时,这很容易,我:

  • 在代码中进行更改

  • 切换到终端并运行cargo run

  • 查看编译器反馈

但现在我想将我的应用程序的一部分提取为库并将其发布到 GitHub 上。我想继续开发我的应用程序,但现在将此库作为依赖项。我将同时开发库和应用程序。

我现在如何获得同样的快速反馈?

库和应用程序都将在同一台机器上开发,我想对库进行更改,相应地更新应用程序并查看编译器反馈。

我猜我可以在 Cargo.toml 中使用我的库作为依赖项并在cargo update每次我想更新我的应用程序的依赖项时运行,但这会有点慢,因为它每次都必须从 github 下载代码并重新编译所有依赖项.

0 投票
1 回答
979 浏览

rust - 货物:箱子名称中的无效字符 `.`

假设我希望我的可执行文件被命名为“index.cgi”(或任何其他不是正确 Rust crate 名称的名称)并使用 Cargo 构建。
Cargo 中是否有任何方法可以指定输出可执行文件的名称,或在构建后步骤中重命名可执行文件?Cargo 的文档非常稀缺,我在那里没有找到任何东西。(简要查看一下来源也没有太大帮助。)

0 投票
1 回答
4547 浏览

shared-libraries - 制作和使用 Rust 共享库的正确方法?

我正在为一个 cpp 库做绑定。为此,我为该库编写了一个 capi / 包装器,并将其编译为一个共享库(.so 文件)。

我的问题是,如何在不强制用户安装的情况下使用该文件并将其集成到 cargo 中?目前我通过从 Cargo.toml 中的构建变量调用的 Makefile 构建 cpp,但我不确定如何处理编译的 lib。

对于测试,我可以使用 rpath 或 LD_LIBRARY_PATH 将可执行文件指向正确的位置,但这在分发库时不起作用。

人们如何管理这个?

0 投票
2 回答
5454 浏览

rust - 对于基于货物的项目,如何将 -L 链接器标志传递给 rustc?

如何使货物通过-L链接器标志到 rustc 调用?