問題タブ [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.
rust - 複数の非ルート バイナリからの非ルート モジュールのインポート
私は Rust を学んでいて、単純なクライアント/サーバー プログラムを作成することにしました。クライアントとサーバーの両方が、既に作成した非常に単純なモジュールを使用します。このコードが大きくなる可能性があることを知っていたので、わかりやすくするためにソースを区分することにしました。現在、私の現在の階層は次のようになります。
スタック オーバーフローとネットで見つけた例の多くは 、プロジェクトのルート ディレクトリにある場合の優れたサンプルを提供します。残念ながら、上記のように別のことをしようとしています。main.rs
communicate.rs
私が書いたすべてのネットワークコードが含まれています。最終的には、他の Rust ファイルをここに追加し、それらのpublic mod
ステートメントを に含めますmod.rs
。現在common/mod.rs
、私が持っているのは
pub mod communicate;
フォルダだけに注目すると、client
私が持っているmain.rs
のは示されているとおりです。ファイルの「ヘッダー」リスト
基本的な[package]
セクション以外に、私が持っているのCargo.toml
は
クライアント バイナリをビルドしようとすると、コンパイラはcommon
クレートが見つからないと文句を言います。
client/
これは、フォルダ内で共通のクレートを探しているためだと思います。mod
ステートメントの代わりにステートメントを試したときに、同じ問題が発生しましたextern crate
。
私にくれた:
また、(を使用して)コンテンツにaをextern crate...
追加しようとしましたが、最初と同じエラーが引き続き発生します。lib.rs
client
pub mod common;
このプロジェクトのようにモデル化するために見つけた1つの潜在的な解決策ですが、これにはすべてのフォルダーに必要であり、Cargo.toml
避けたいものです。
近くにいるような気がしますが、何かが欠けています。
operating-system - Crate の Cargo.toml OS 依存関係
私はmysql -crate 依存関係を含む錆びたプロジェクトを持っており、OS に依存しないようにしたいと考えています。
だから私は試しました:Cargo.toml
エラーは、最小限のメインですでに発生しています: src/main.rs
しかし、ビルドは失敗します。macos/unix では、常にパイプをコンパイルして、未解決のインポートを取得する必要があります。
Windows でも mysql クレート自体に対して同じことが起こります。
私の質問は、この場合、OS 依存関係をどのように処理すればよいですか?
rust - Cargo.toml に openssl 0.7.14 があるのに、solicit 0.4.4 が openssl 0.9.12 を使用しようとするのはなぜですか?
Solicit の例を使用して HTTPS でリクエストを行う簡単なプロジェクトがあります。私のCargo.tomlには次のものがあります:
を実行しようとするcargo build
と、エラーは次のとおりです。
なぜ 0.7.14 ではなく 0.9.12 なのですか?