如何在Rust中编写一个程序,可以在任何地方执行,而无需使用cargo run,只需单击文件即可?有任何板条箱吗?我写了蛇游戏的代码,我想通过点击一个文件来运行它。
cargo run
9nvpjoqh1#
如果你编译一个Rust应用程序:
cargo build --release
字符串它将在./target/release中放置一个二进制文件。因此,如果您的应用程序名为snake_game,则可以使用./target/release/snake_game运行它,或者双击该文件。此二进制文件是完全独立的,因此您可以将其移动或复制到计算机上的其他位置。
./target/release
snake_game
./target/release/snake_game
o8x7eapl2#
字符串
通常是chmod +x target/release/whateverYourProgramIsCalled来使其成为可执行文件,但cargo已经为我们做到了这一点。
chmod +x target/release/whateverYourProgramIsCalled
ls -l target/release/whateverYourProgramIsCalled chmod +x target/release/whateverYourProgramIsCalled ls -l target/release/whateverYourProgramIsCalled
型正如您所看到的,没有任何更改......权限已经正确执行
./whateverYourProgramIsCalled
型
您可以从命令行在任何地方运行该二进制文件为此,您需要将其添加到路径中对于Mac,您可以从/etc/paths添加到路径无论你喜欢什么编辑器. vi,code,等等.
/etc/paths
sudo code /etc/paths
型我添加了一个这样的路径,保存并使用密码进行身份验证
/Users/`whoami`/code/rust/binaries
型whoami命令被包围'接下来,将新的二进制文件复制到该二进制文件夹中需要它的位置
cp whateverYourProgramIsCalled /Users/`whoami`/code/rust/binaries
where whateverYourProgramIsCalled
whateverYourProgramIsCalled
nzrxty8p3#
只是想在这里添加另一个答案,不确定它是否与最近版本的Rust有关。如果在项目的根目录下运行cargo install --path .命令,它会将其添加到cargo中,并允许您仅使用项目名称运行二进制文件。
cargo install --path .
epfja78i4#
还有另一种方法可以使用rustc。它将在文件所在的目录中创建一个可执行的二进制文件。确保您位于src目录中,并且文件名为main.rs。
rustc main.rs ./main
字符串使用rustc的好处是,你可以运行任何文件,而不仅仅是main.rs。
rustc filename.rs ./filename
型您可以从终端运行它,也可以通过单击该文件。
bkhjykvo5#
字符串如果你想运行它作为另一个安装在本地的sudo应用程序,idk为什么人们建议手动启动sudo cping sh**周围.
5条答案
按热度按时间9nvpjoqh1#
如果你编译一个Rust应用程序:
字符串
它将在
./target/release
中放置一个二进制文件。因此,如果您的应用程序名为snake_game
,则可以使用./target/release/snake_game
运行它,或者双击该文件。此二进制文件是完全独立的,因此您可以将其移动或复制到计算机上的其他位置。
o8x7eapl2#
首先构建您的二进制文件以进行发布
字符串
下一个句柄权限
通常是
chmod +x target/release/whateverYourProgramIsCalled
来使其成为可执行文件,但cargo已经为我们做到了这一点。你可以检查它的八进制
型
正如您所看到的,没有任何更改......权限已经正确执行
运行该可执行文件
型
可选:从任何地方运行
您可以从命令行在任何地方运行该二进制文件
为此,您需要将其添加到路径中
对于Mac,您可以从
/etc/paths
添加到路径无论你喜欢什么编辑器. vi,code,等等.
型
我添加了一个这样的路径,保存并使用密码进行身份验证
型
whoami命令被包围'
接下来,将新的二进制文件复制到该二进制文件夹中需要它的位置
型
然后打开新的终端窗口
检查命令是否在路径中
型
从任意位置运行命令
型
欢乐
nzrxty8p3#
只是想在这里添加另一个答案,不确定它是否与最近版本的Rust有关。
如果在项目的根目录下运行
cargo install --path .
命令,它会将其添加到cargo中,并允许您仅使用项目名称运行二进制文件。epfja78i4#
还有另一种方法可以使用rustc。它将在文件所在的目录中创建一个可执行的二进制文件。
确保您位于src目录中,并且文件名为main.rs。
字符串
使用rustc的好处是,你可以运行任何文件,而不仅仅是main.rs。
型
您可以从终端运行它,也可以通过单击该文件。
bkhjykvo5#
字符串
如果你想运行它作为另一个安装在本地的sudo应用程序,idk为什么人们建议手动启动sudo cping sh**周围.