English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Cargo - это система сборки и менеджер пакетов для Rust.
Разработчики Rust часто используют Cargo для управления проектами Rust и получения зависимостей проекта. В предыдущем уроке мы использовали команду cargo new greeting для создания проекта greeting, Cargo создал папку greeting и部署ил в ней типичную структуру файлов Rust проекта. Эта папка greeting - это сам проект.
Cargo, кроме создания проекта, также имеет функции сборки (build) и выполнения (run) проекта, сборка и выполнение соответствуют следующим командам:
cargo build cargo run
Cargo также имеет функции получения пакетов,打包, продвинутая сборка и т.д., подробности использования см. в команде Cargo.
Cargo - это неплохой инструмент для сборки, если использовать его с VSCode, то VSCode станет очень удобной средой разработки.
В предыдущей главе мы создали проект greeting, теперь откроем папку greeting в VSCode (Внимание, не w3codebox-greeting)。
Откройте greeting, создайте новую папку .vscode (внимание, перед vscode точка, если папка уже существует, её не нужно создавать). В新建ленной папке .vscode создайте два файла tasks.json и launch.json, содержимое файлов таково:
{ "version": "2.0.0", "tasks": [ { "label": "build", "type": "shell", "command":"cargo", "args": ["build"] } ] }
{ "version": "0.2.0", "configurations": [ { "name": "(Windows) Start", "preLaunchTask": "build", "type": "cppvsdbg", "request": "launch", "program": "${workspaceFolder}/target/debug/${workspaceFolderBasename}.exe", "args": [], "stopAtEntry": false, "cwd": "${workspaceFolder}", "environment": [], "console": false }, { "name": "(gdb) Start", "type": "cppdbg", "request": "launch", "program": "${workspaceFolder}/target/debug/${workspaceFolderBasename}.exe", "args": [], "stopAtEntry": false, "cwd": "${workspaceFolder}", "environment": [], "console": false, "MIMode": "gdb", "miDebuggerPath": "Укажите каталог, где находится GDB", "setupCommands": [ { "description": "Включить красивую печать для gdb", "text": "-enable-pretty-printing", "ignoreFailures": true } } } ] }
{ "version": "0.2.0", "configurations": [ { "name": "Debug", "type": "gdb", "preLaunchTask": "build", "request": "launch", "target": "${workspaceFolder}/target/debug/${workspaceFolderBasename}", "cwd": "${workspaceFolder}" } ] }
{ "version": "0.2.0", "configurations": [ { "name": "(lldb) Start", "type": "cppdbg", "preLaunchTask": "build", "request": "launch", "program": "${workspaceFolder}/target/debug/${workspaceFolderBasename}", "args": [], "stopAtEntry": false, "cwd": "${workspaceFolder}", "environment": [], "externalConsole": false, "MIMode": "lldb" } ] }
Затем нажмите "Запуск" в левой панели VSCode.
Если вы используете MSVC, выберите "(Windows) Start".
Если вы используете MinGW и установили GDB, выберите "(gdb) Start", перед запуском gdb, пожалуйста, заполните "miDebuggerPath" в launch.json.
Программа начнет отладку и запуск. Вывод будет отображаться в "Диспетчер отладки":
Методы отладки программ ähnlich anderen Umgebungen, es genügt, auf die rote Markierung links vom Zeilennummer zu klicken, um einen Breakpoint zu setzen. Wenn der Breakpoint erreicht wird, wird das Programm angehalten, damit der Entwickler die Werte der Variablen in Echtzeit überwachen kann.