返回列表 发布新帖

[软件] 在 Visual Studio Code (VSCode) 中运行 Rust 程序

815 0
digger 发表于 2025-10-11 22:56:41 | 查看全部 阅读模式 来自:Error

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
<h2>在 Visual Studio Code (VSCode) 中运行 Rust 程序需配置开发环境并利用 Cargo 命令或调试工具。以下是详细步骤:</h2>
; e" F% X# K6 P% k# }( e2 b4 }<p><img src="data/attachment/forum/202510/11/225630jmkigku00mu5urrq.webp" alt="05d742824eba481588940c8183b78871.webp" title="05d742824eba481588940c8183b78871.webp" /></p>
" s- H: {9 i. y3 Q8 h<p>一、基础环境准备</p>0 O1 |) o, @8 Z4 a+ z
<ol>, V9 L+ \, D3 u* u/ ~8 ^5 a, n
<li>
; N- O6 S3 ?! k<p>安装 Rust 工具链</p>+ `1 s0 ?: E6 H- S" h
<ul>& p$ J- Q& F" a3 v2 f# Z
<li>通过 <code>rustup</code> 安装 Rust 编译器(<code>rustc</code>)和包管理器(<code>cargo</code>)。</li>$ K6 r- E% k6 f* ^" w7 B
<li>验证安装:
- \) f* m+ q; u- ~8 o# U<pre><code class="language-bash">rustc --version  查看编译器版本
& v( f( t. Z( _4 `cargo --version  查看包管理器版本
: X7 ]6 f5 Q$ C7 ]8 ]. W</code></pre>
% Y1 s# F* O& x1 N* ]' ?. W, V</li>
7 }, T* {5 u5 v0 u</ul>
$ p# T# z5 y# G; ^6 I$ f# e</li>
2 _- ?/ m* S  _* z0 U- Q+ h<li>
! {- n0 D2 S9 C6 @! N! D<p>安装 VSCode 扩展</p>6 ~" ~0 J; U- \/ t7 l9 v9 k  J: `) H
<ul>
, q& H5 v( r* Q<li>核心插件:
$ F# A# M9 I% t! a# Y) j/ q<ul>" B* }/ |: p/ Z9 a
<li><code>rust-analyzer</code>(语言支持)</li>
) A  P1 ^1 z! I" s6 j: K" ]" A! }# g<li><code>CodeLLDB</code>(调试)</li>/ m! R8 f& J4 v& ?1 z' p
<li><code>crates</code>(依赖管理)</li>
  d9 Y; z( C' W</ul>
6 a! x: Z+ s, e</li>
" |5 e; S  \# \; n; p8 ^# g: [, r<li>可选插件:
3 K1 {$ [% }0 \- ?+ V<ul>
- u. `$ c, a7 ?<li><code>Even Better TOML</code>(配置文件高亮)</li>8 l* m6 N- M4 g7 T0 k
<li><code>Error Lens</code>(错误提示增强)</li>/ t+ k6 _: z' f  r  G
</ul>
+ r, w! c2 n; X- @' d2 u</li>; X1 U# y* u# g$ `
</ul>' a' A4 t' Z6 ]5 s$ w2 m$ s( a% l% G
</li>1 _( \/ f+ A3 j4 Q6 `+ }* d
</ol>
; V) Y, W* I) u<hr />
5 u: u  q' W4 x<p>二、创建并运行项目</p>. {& Z6 Y9 y( u) {0 d3 ~( r
<ol>7 V/ P3 o1 v2 {) J( T
<li>  U# s1 {% e" x8 `& a# p% a
<p>新建 Rust 项目</p>: C2 |( A0 I8 q4 |/ O9 O$ u3 m7 i! g& s
<pre><code class="language-bash">cargo new my_project  创建新项目  ~! P( Q3 J# J, U! l: l
cd my_project          进入项目目录; y" z1 ^7 e* d- n- ?
code .                 用 VSCode 打开项目
& k8 S; Q3 P9 \% L+ t0 i</code></pre>
2 U) L" J# M) \) X+ v</li>
4 i% e% w. }  B! C9 `" ^<li>
0 n3 {+ `1 c% D# e<p>编译与运行</p>0 g2 S/ S/ y" ?) w/ w
<ul>/ r8 @- J9 B/ D# D, [
<li>) U( u9 Y, D% k+ B) k$ B
<p>终端运行:</p>
" q/ n4 v' i) h, s( H2 Z5 s<pre><code class="language-bash">cargo build    编译项目  ^5 N9 T3 }7 n/ _0 E
cargo run      编译并运行
# N* r- z9 k$ L</code></pre>+ L+ k) J$ }7 f7 U/ \$ _
<p>默认输出 &quot;Hello, world!&quot;。</p>
" u+ n/ a! b& x7 R& c. O</li>
. F0 j: |2 w* A<li>
/ |  h& r1 \1 ?<p>快捷操作:</p>
7 }4 R( x5 A6 T( }<ul>( H6 |" f4 P: n# I2 H% C5 S
<li>在 <code>main.rs</code> 文件中,点击 <code>fn main()</code> 上方的 ▶ Run 或 ▷ Debug 按钮。</li>( R0 t' T( r6 Z) w7 u( ?8 i' H
<li>使用快捷键 <code>Ctrl+Shift+</code> 打开终端,直接输入 <code>cargo run</code>。</li>8 Y, ]: o$ E' e) c, f
</ul>, a5 v% m5 `# x( [: x
</li>
8 o. B1 y4 \7 e$ R</ul>/ R: g2 Z; w" V$ u8 s- V
</li>* d! z7 q+ a2 ]( l3 T7 i* d" c% O
</ol>
* m5 Y) w. f$ V<hr />
5 B- u) s. t, H; L+ c: L! l$ K<p>三、配置调试环境</p>
/ D! w: c+ D. K# V<ol>
; y' S+ c- j, H/ @6 Y& [" Q2 e<li>) x. k' q! v: v* J/ d
<p>生成调试配置文件</p>
; B) O$ F6 C" q! o) L1 B2 V$ A$ X<ul>' K, o, p& |" p0 m
<li>按 <code>Ctrl+Shift+D</code> 打开调试面板,点击 &quot;create a launch.json file&quot;。</li>2 i) `! a8 n1 K: R' c) i
<li>选择 &quot;Rust&quot; 或 &quot;GDB/LLDB&quot; 调试器,自动生成 <code>.vscode/launch.json</code>。</li>
3 u2 A4 |: r+ m9 s4 z3 B</ul># K( V/ r) Y. ~; a, h% T% N
</li>" s( w" S+ A- s1 e6 A
<li>
: I  P* N4 ^- S5 c/ W<p>修改 launch.json 示例</p>
8 W( v% s9 k6 n  K) W! Z/ k<pre><code class="language-json">{) j- ~4 R, S1 Y& k- g
  &quot;version&quot;: &quot;0.2.0&quot;,+ Q. a6 z1 U7 Z; X8 r
  &quot;configurations&quot;: [+ B# v& [1 o; M) k; J) \/ _
    {
" ?" q/ |# P! H) a/ i# }      &quot;name&quot;: &quot;Debug executable&quot;,
4 ^# l0 M5 P; `      &quot;type&quot;: &quot;lldb&quot;,  // 或 &quot;cppdbg&quot;(Windows)* M8 {' k/ n( w1 C6 g
      &quot;request&quot;: &quot;launch&quot;,
+ }) |/ o0 U1 R  t+ ~/ [      &quot;program&quot;: &quot;${workspaceFolder}/target/debug/${workspaceFolderBasename}&quot;, // 可执行文件路径
/ p& o! O4 n: S* K( s8 n- M      &quot;args&quot;: [],      // 命令行参数
1 m5 f7 u, w, L$ K7 [4 x& q      &quot;cwd&quot;: &quot;${workspaceFolder}&quot;,
8 t0 N  e" I+ r5 O; B      &quot;preLaunchTask&quot;: &quot;cargo build&quot;  // 调试前自动编译# S; I) t2 F' `, Y
    }
& D: U/ o. D( L. K3 |6 Y4 r. a  ]( h, Q! w7 E3 i8 l/ u& B
}4 V' [; s3 y3 \+ l
</code></pre>
; i( ?0 w" G# m( v" k<ul>
1 Q, W) T' O7 u. o4 L# J6 b. |5 V<li>Windows 路径示例:
# ]! F7 c' z$ h+ K<pre><code class="language-json">&quot;program&quot;: &quot;${workspaceFolder}/target/debug/${workspaceFolderBasename}.exe&quot;/ u+ {+ c; b* A/ D* f" U
</code></pre>
: ?' V' L- z: w+ V5 k& @$ k</li>
8 @# t  t1 k* G</ul>8 t: ~( e* o5 Z$ A
</li>
, x% b+ Q2 e$ E8 R# D. v& s3 H<li>, P$ q; e, S6 X$ ?- P! }1 Y
<p>启动调试</p>
8 C$ f+ H5 m" e, D<ul>& K/ R' r3 X$ v( o- B% x
<li>设置断点:点击代码行号左侧空白区域。</li>! A4 ^0 R3 d% c* _0 ~8 |/ S
<li>按 <code>F5</code> 或点击绿色播放按钮启动调试。</li>0 r' w  k4 W5 D2 G) J  }( n
<li>使用调试工具栏(继续 <code>F5</code>、单步跳过 <code>F10</code>、单步调试 <code>F11</code>)。</li>
' R& f2 L; L& C0 x- B5 ^) Z  F3 Q</ul>3 O$ _/ ~0 n4 Q5 Q0 Q
</li>* A; R1 L: }. R' d! M3 ]
</ol>) m: f5 J% w* l- x& O1 x  i4 D
<hr />6 m7 I1 X% Q0 O% I9 K2 `6 l
<p>四、常用调试技巧</p>
4 H$ N& b# [' j' C<ol>) F* ~4 n, ^/ s) i- I1 {: O' q1 V
<li>
. s, I* m. S9 M0 P9 d<p>传递命令行参数</p>" A% R1 x1 U8 p+ ?# S$ d% F& l
<ul>, m0 n" _. m9 y! g: l) p
<li>在 <code>launch.json</code> 的 <code>args</code> 字段中添加参数:
* `2 d8 P( m/ b9 s& ?<pre><code class="language-json">&quot;args&quot;: [&quot;arg1&quot;, &quot;arg2&quot;]7 p  i3 |: S1 j1 H
</code></pre>* s- o! e7 N% X8 \$ n6 r
</li>* D8 Y* c* w. m$ P
</ul>
1 i7 x* P  `) U* x  c( I5 C1 Q</li>
8 a( w0 l) w8 F  o* {<li>5 ^" b$ \8 p( K5 }' g
<p>保存时自动格式化</p>+ T0 ^- f1 n, N! x6 K
<ul>
4 q' w0 a6 I2 b<li>在 VSCode 设置中启用:
. t2 l4 o, y1 G' m" F: L( E: ~<pre><code class="language-json">{
5 y) I8 E* h/ Q% h  &quot;editor.formatOnSave&quot;: true,( `" _0 ~# ]9 S
  &quot;[rust]&quot;: {
( v) r; G' G$ f- e( s, s    &quot;editor.defaultFormatter&quot;: &quot;rust-lang.rust-analyzer&quot;
0 _! D$ |; }( D3 P7 w! {2 D9 f  }5 |  E( l3 f  L$ s$ S% F+ ?1 J6 |
}
! A  m- |3 G9 s; z# g</code></pre>
4 c/ w1 `: n  Z& x3 Z4 b. h+ N* ~, L</li>
6 T9 W7 K' h& r7 _. _! b6 V$ f</ul>+ D9 ~7 R, z8 f, s4 k  [' N+ q- e
</li>  p5 o4 V( R! z6 G0 x
<li>4 ?) |  J/ M; n3 [3 |1 y
<p>快速检查代码</p>; [4 x( P6 x  b/ b' B* O
<pre><code class="language-bash">cargo check  仅检查编译错误,不生成可执行文件
+ i# ~. ]9 ~4 ~7 Z1 n</code></pre>
0 S* }3 k; s( E- B! |</li>0 k& a: S/ [( w, Q* M" E
</ol>
* \8 f2 k2 t& `5 X! k  L( j: c<hr />& u7 }( {/ C* A
<p>五、常见问题解决</p>3 ?! @4 v" n+ X
<ul>; v9 Q2 N. |) g+ ~
<li>插件未生效:" x" ]' \2 f3 O) a/ b/ ~
<ul>. Y0 o$ ?& l7 m! R9 d& o
<li>重启 VSCode 或执行命令 <code>Rust Analyzer: Restart</code>。</li>
2 k- h$ n! C' G% Y% g9 ]( J  Y* C<li>确保项目根目录包含 <code>Cargo.toml</code>。</li>) l  u" V$ o- a+ L2 Z- ?+ L6 D
</ul>3 m; ^: N1 E: _# c, U" d+ O
</li>
, }& }5 K) k- P' t2 h<li>调试失败:! I. @$ c& X' X( `- D$ n1 u4 f
<ul>
2 a# C# K9 C5 z6 g; T! s! Y; G<li>检查 <code>launch.json</code> 中的可执行文件路径是否正确。</li>
: p5 j$ X+ V* K/ k' {<li>确保已安装调试器(如 <code>gdb</code> 或 <code>lldb</code>)。<br />1 \5 C! U$ G7 v7 F
通过以上步骤,可高效在 VSCode 中编写、编译、调试 Rust 程序。更多细节可参考官方文档或社区教程。</li>3 N! p- `4 R, M# y
</ul>
7 g2 V4 d+ P2 r' K: g6 j$ }</li>! W: D9 s6 l! m9 ?1 ?
</ul># y: j4 q9 v; A' Y
05d742824eba481588940c8183b78871.webp
匠心独运,千锤百炼,品质非凡。
回复 转播

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

您需要 登录 后才可以回复,轻松玩转社区,没有帐号?立即注册
快速回复
关灯 在本版发帖
扫一扫添加微信客服
QQ客服返回顶部
快速回复 返回顶部 返回列表