[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"page-ru-/guides/rust/first-rust-project":3,"mdc-m8iocd-key":449,"mdc--ggr6rl-key":483,"mdc-jety5m-key":506,"mdc-yoyytu-key":514,"mdc-tdxfte-key":545,"mdc--odakw1-key":553,"mdc-6ppgis-key":584,"mdc-7qi8i3-key":606,"related-/guides/rust/install-rust-windows,/guides/rust/cargo-commands-basics,/guides/rust/understanding-cargo-toml":622},{"id":4,"title":5,"appliesTo":6,"author":10,"body":11,"canonical":386,"code":386,"createdAt":387,"description":388,"difficulty":389,"draft":390,"estimatedTime":391,"extension":392,"faq":393,"howToSteps":406,"howToTotalTime":419,"image":386,"keywords":420,"locale":428,"meta":429,"navigation":430,"path":431,"platform":432,"related":433,"section":437,"seo":438,"severity":386,"stem":439,"summary":440,"tags":441,"twitterCreator":386,"twitterSite":386,"type":447,"updatedAt":387,"__hash__":448},"content_ru/guides/rust/first-rust-project.md","Создаём первый проект на Rust: установка, Cargo и запуск",[7,8,9],"Rust 1.77+","Cargo 1.77+","Windows 10/11, macOS 13+, Ubuntu 22.04+","FixPedia Team",{"type":12,"value":13,"toc":374},"minimark",[14,19,32,36,39,43,48,62,65,107,122,132,135,154,158,161,183,190,213,216,220,226,249,256,260,263,275,282,286,289,297,314,318,346,352,370],[15,16,18],"h2",{"id":17},"введение-зачем-это-нужно","Введение / Зачем это нужно",[20,21,22,23,27,28,31],"p",{},"Rust сочетает в себе высокую производительность системных языков и гарантии безопасности памяти на этапе компиляции. Создание первого проекта — это обязательный шаг, который познакомит вас с экосистемой ",[24,25,26],"code",{},"rustup"," и пакетным менеджером ",[24,29,30],{},"Cargo",". К концу этого руководства вы получите полностью рабочий исполняемый файл, научитесь управлять структурой каталогов и подготовите среду для дальнейшей разработки.",[15,33,35],{"id":34},"требования-подготовка","Требования / Подготовка",[20,37,38],{},"Перед началом убедитесь, что на вашем компьютере есть стабильный доступ в интернет и свободное место на диске (около 500 МБ для базового инструментария). Вам потребуется современный текстовый редактор (VS Code, Notepad++, Sublime Text или любой другой). Гайд универсален и корректно работает на Windows, macOS и Linux.",[15,40,42],{"id":41},"пошаговая-инструкция","Пошаговая инструкция",[44,45,47],"h3",{"id":46},"шаг-1-установка-rust-и-cargo","Шаг 1: Установка Rust и Cargo",[20,49,50,51,53,54,57,58,61],{},"Официальный и самый безопасный способ установки — через ",[24,52,26],{},". Он автоматически загружает компилятор ",[24,55,56],{},"rustc",", менеджер пакетов ",[24,59,60],{},"cargo"," и офлайн-документацию.",[20,63,64],{},"Для macOS и Linux выполните в терминале:",[66,67,72],"pre",{"className":68,"code":69,"language":70,"meta":71,"style":71},"language-bash shiki shiki-themes github-light github-dark","curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh\n","bash","",[24,73,74],{"__ignoreMap":71},[75,76,79,83,87,91,94,97,100,104],"span",{"class":77,"line":78},"line",1,[75,80,82],{"class":81},"sScJk","curl",[75,84,86],{"class":85},"sj4cs"," --proto",[75,88,90],{"class":89},"sZZnC"," '=https'",[75,92,93],{"class":85}," --tlsv1.2",[75,95,96],{"class":85}," -sSf",[75,98,99],{"class":89}," https://sh.rustup.rs",[75,101,103],{"class":102},"szBVR"," |",[75,105,106],{"class":81}," sh\n",[20,108,109,110,113,114,121],{},"Для Windows скачайте исполняемый файл ",[24,111,112],{},"rustup-init.exe"," с ",[115,116,120],"a",{"href":117,"rel":118},"https://rustup.rs/",[119],"nofollow","официального сайта"," и запустите его. В процессе установки выберите стандартную конфигурацию (вариант 1).",[123,124,125],"blockquote",{},[20,126,127,128,131],{},"💡 Совет: После завершения установки обязательно закройте текущее окно терминала и откройте новое. Это необходимо для корректного применения изменений в системной переменной ",[24,129,130],{},"PATH",".",[20,133,134],{},"Проверьте успешность установки, запросив версии инструментов:",[66,136,138],{"className":68,"code":137,"language":70,"meta":71,"style":71},"rustc --version\ncargo --version\n",[24,139,140,147],{"__ignoreMap":71},[75,141,142,144],{"class":77,"line":78},[75,143,56],{"class":81},[75,145,146],{"class":85}," --version\n",[75,148,150,152],{"class":77,"line":149},2,[75,151,60],{"class":81},[75,153,146],{"class":85},[44,155,157],{"id":156},"шаг-2-создание-структуры-проекта","Шаг 2: Создание структуры проекта",[20,159,160],{},"Перейдите в директорию, где планируете хранить свои учебные и рабочие проекты. В Rust проекты создаются одной командой:",[66,162,164],{"className":68,"code":163,"language":70,"meta":71,"style":71},"cargo new my_first_project\ncd my_first_project\n",[24,165,166,176],{"__ignoreMap":71},[75,167,168,170,173],{"class":77,"line":78},[75,169,60],{"class":81},[75,171,172],{"class":89}," new",[75,174,175],{"class":89}," my_first_project\n",[75,177,178,181],{"class":77,"line":149},[75,179,180],{"class":85},"cd",[75,182,175],{"class":89},[20,184,185,186,189],{},"Команда ",[24,187,188],{},"cargo new"," генерирует стандартную структуру:",[191,192,193,200,206],"ul",{},[194,195,196,199],"li",{},[24,197,198],{},"Cargo.toml"," — манифест проекта. Здесь хранятся метаданные, версия компилятора и внешние зависимости.",[194,201,202,205],{},[24,203,204],{},"src/main.rs"," — главный исходный файл, с которого начинается исполнение программы.",[194,207,208,209,212],{},"Скрытая папка ",[24,210,211],{},".git"," — автоматически инициализированный репозиторий для контроля версий.",[214,215],"in-article-ad",{},[44,217,219],{"id":218},"шаг-3-написание-кода","Шаг 3: Написание кода",[20,221,222,223,225],{},"Откройте файл ",[24,224,204],{}," в вашем редакторе. По умолчанию в нём уже находится базовый шаблон. Вы можете оставить его или заменить на собственный вариант:",[66,227,231],{"className":228,"code":229,"language":230,"meta":71,"style":71},"language-rust shiki shiki-themes github-light github-dark","fn main() {\n    println!(\"Привет, мир! Мой первый проект на Rust работает.\");\n}\n","rust",[24,232,233,238,243],{"__ignoreMap":71},[75,234,235],{"class":77,"line":78},[75,236,237],{},"fn main() {\n",[75,239,240],{"class":77,"line":149},[75,241,242],{},"    println!(\"Привет, мир! Мой первый проект на Rust работает.\");\n",[75,244,246],{"class":77,"line":245},3,[75,247,248],{},"}\n",[20,250,251,252,255],{},"Макрос ",[24,253,254],{},"println!"," выводит текст в консоль, а восклицательный знак указывает компилятору на то, что это именно макрос, а не обычная функция. Точка с запятой в конце строки обязательна.",[44,257,259],{"id":258},"шаг-4-компиляция-и-запуск","Шаг 4: Компиляция и запуск",[20,261,262],{},"Вернитесь в корневую папку проекта и запустите выполнение:",[66,264,266],{"className":68,"code":265,"language":70,"meta":71,"style":71},"cargo run\n",[24,267,268],{"__ignoreMap":71},[75,269,270,272],{"class":77,"line":78},[75,271,60],{"class":81},[75,273,274],{"class":89}," run\n",[20,276,277,278,281],{},"При первом запуске Cargo самостоятельно проверит наличие компилятора, скомпилирует ваш код в режиме отладки (",[24,279,280],{},"debug",") и сразу запустит полученный бинарник. Вы увидите системные сообщения о процессе сборки и вывод вашей программы.",[15,283,285],{"id":284},"проверка-результата","Проверка результата",[20,287,288],{},"Убедитесь, что в терминале появились строки:",[66,290,295],{"className":291,"code":293,"language":294,"meta":71},[292],"language-text","   Compiling my_first_project v0.1.0 (/path/to/my_first_project)\n    Finished dev [unoptimized + debuginfo] target(s) in 1.24s\n     Running `target/debug/my_first_project`\nПривет, мир! Мой первый проект на Rust работает.\n","text",[24,296,293],{"__ignoreMap":71},[20,298,299,300,303,304,307,308,311,312,131],{},"Наличие строки ",[24,301,302],{},"Finished dev"," означает, что компиляция прошла успешно без ошибок и предупреждений. Исполняемый файл теперь лежит в папке ",[24,305,306],{},"target/debug/my_first_project"," (или ",[24,309,310],{},".exe"," на Windows) и может запускаться напрямую без вызова ",[24,313,60],{},[15,315,317],{"id":316},"возможные-проблемы","Возможные проблемы",[20,319,320,331,332,307,335,338,339,341,342,345],{},[321,322,323,324,327,328],"strong",{},"Ошибка: ",[24,325,326],{},"cannot find binary path"," или ",[24,329,330],{},"command 'cargo' not found","\nСистема не видит установленный инструмент. Добавьте путь ",[24,333,334],{},"~/.cargo/bin",[24,336,337],{},"%USERPROFILE%\\.cargo\\bin"," на Windows) в переменную окружения ",[24,340,130],{}," вручную через настройки системы, либо выполните ",[24,343,344],{},"source $HOME/.cargo/env"," в текущей сессии терминала.",[20,347,348,351],{},[321,349,350],{},"Ошибки компиляции при изменении кода","\nКомпилятор Rust очень строг к синтаксису и типизации. Если вы допустили опечатку, он укажет точный номер строки и характер проблемы. Внимательно читайте вывод терминала: красные блоки содержат описание ошибки и часто предлагают готовые исправления.",[20,353,354,357,358,361,362,365,366,369],{},[321,355,356],{},"Предупреждения линтера (clippy)","\nЕсли вы видите жёлтые сообщения ",[24,359,360],{},"warning",", это не остановит выполнение, но указывает на неидиоматичный код. Для автоматической проверки стиля запустите ",[24,363,364],{},"cargo clippy"," (предварительно установите компонент через ",[24,367,368],{},"rustup component add clippy",") и примените предложенные оптимизации.",[371,372,373],"style",{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":71,"searchDepth":149,"depth":149,"links":375},[376,377,378,384,385],{"id":17,"depth":149,"text":18},{"id":34,"depth":149,"text":35},{"id":41,"depth":149,"text":42,"children":379},[380,381,382,383],{"id":46,"depth":245,"text":47},{"id":156,"depth":245,"text":157},{"id":218,"depth":245,"text":219},{"id":258,"depth":245,"text":259},{"id":284,"depth":149,"text":285},{"id":316,"depth":149,"text":317},null,"2026-04-05 00:12:45","Пошаговая инструкция по созданию первого проекта на языке Rust. Установите инструменты, настройте Cargo и запустите приложение за 10 минут.","easy",false,"10-15 мин","md",[394,397,400,403],{"question":395,"answer":396},"Нужны ли права администратора для установки Rust?","При использовании официального установщика `rustup` права администратора обычно не требуются. Инструментарий разворачивается в домашнюю директорию пользователя (`~/.cargo` и `~/.rustup`).",{"question":398,"answer":399},"Что делать, если команда cargo не найдена после установки?","Закройте и снова откройте терминал, чтобы обновить переменную окружения PATH. Если проблема сохраняется, добавьте `~/.cargo/bin` в PATH вручную или запустите `source ~/.cargo/env`.",{"question":401,"answer":402},"Можно ли использовать IDE вместо текстового редактора?","Да, Rust отлично поддерживается в VSCode с расширением rust-analyzer, JetBrains RustRover, а также в Vim/Neovim с соответствующими плагинами.",{"question":404,"answer":405},"Чем `cargo run` отличается от `cargo build`?","`cargo build` только компилирует проект в папку `target/debug/`, тогда как `cargo run` выполняет компиляцию и сразу запускает полученный исполняемый файл.",[407,410,413,416],{"name":408,"text":409},"Установка Rust и Cargo","Скачайте официальный установщик rustup с сайта rust-lang.org и следуйте инструкциям для вашей ОС. После установки перезапустите терминал.",{"name":411,"text":412},"Создание структуры проекта","Откройте терминал в нужной папке и выполните `cargo new hello_world`. Команда создаст директорию с файлом `Cargo.toml` и папкой `src`.",{"name":414,"text":415},"Написание кода","Откройте файл `src/main.rs` в любом текстовом редакторе. Замените содержимое на `fn main() { println!(\"Привет, мир!\"); }`.",{"name":417,"text":418},"Компиляция и запуск","Вернитесь в корневую папку проекта и выполните `cargo run`. Система автоматически скачает зависимости, скомпилирует код и выведет результат в консоль.","PT15M",[421,422,423,424,425,426,427],"первый проект Rust","создать проект cargo","установка Rust 2026","hello world на Rust","компиляция программы Rust","начало работы с Rust","rustc и cargo tutorial","ru_RU",{},true,"/guides/rust/first-rust-project","general",[434,435,436],"/guides/rust/install-rust-windows","/guides/rust/cargo-commands-basics","/guides/rust/understanding-cargo-toml","Гайды по разработке",{"title":5,"description":388},"guides/rust/first-rust-project","Этот гайд проведёт вас через установку инструментария Rust, создание структуры проекта с помощью Cargo и запуск первой скомпилированной программы.",[442,30,443,444,445,446],"Rust","программирование","getting-started","разработка","system-programming","guide","0oiW3aQtYZ_6LRffL4WK7F81mg6JUxHK-ylsiho0ffc",{"data":450,"body":451},{},{"type":452,"children":453},"root",[454],{"type":455,"tag":20,"props":456,"children":457},"element",{},[458,460,465,467,473,475,481],{"type":294,"value":459},"При использовании официального установщика ",{"type":455,"tag":24,"props":461,"children":463},{"className":462},[],[464],{"type":294,"value":26},{"type":294,"value":466}," права администратора обычно не требуются. Инструментарий разворачивается в домашнюю директорию пользователя (",{"type":455,"tag":24,"props":468,"children":470},{"className":469},[],[471],{"type":294,"value":472},"~/.cargo",{"type":294,"value":474}," и ",{"type":455,"tag":24,"props":476,"children":478},{"className":477},[],[479],{"type":294,"value":480},"~/.rustup",{"type":294,"value":482},").",{"data":484,"body":485},{},{"type":452,"children":486},[487],{"type":455,"tag":20,"props":488,"children":489},{},[490,492,497,499,505],{"type":294,"value":491},"Закройте и снова откройте терминал, чтобы обновить переменную окружения PATH. Если проблема сохраняется, добавьте ",{"type":455,"tag":24,"props":493,"children":495},{"className":494},[],[496],{"type":294,"value":334},{"type":294,"value":498}," в PATH вручную или запустите ",{"type":455,"tag":24,"props":500,"children":502},{"className":501},[],[503],{"type":294,"value":504},"source ~/.cargo/env",{"type":294,"value":131},{"data":507,"body":508},{},{"type":452,"children":509},[510],{"type":455,"tag":20,"props":511,"children":512},{},[513],{"type":294,"value":402},{"data":515,"body":516},{},{"type":452,"children":517},[518],{"type":455,"tag":20,"props":519,"children":520},{},[521,527,529,535,537,543],{"type":455,"tag":24,"props":522,"children":524},{"className":523},[],[525],{"type":294,"value":526},"cargo build",{"type":294,"value":528}," только компилирует проект в папку ",{"type":455,"tag":24,"props":530,"children":532},{"className":531},[],[533],{"type":294,"value":534},"target/debug/",{"type":294,"value":536},", тогда как ",{"type":455,"tag":24,"props":538,"children":540},{"className":539},[],[541],{"type":294,"value":542},"cargo run",{"type":294,"value":544}," выполняет компиляцию и сразу запускает полученный исполняемый файл.",{"data":546,"body":547},{},{"type":452,"children":548},[549],{"type":455,"tag":20,"props":550,"children":551},{},[552],{"type":294,"value":409},{"data":554,"body":555},{},{"type":452,"children":556},[557],{"type":455,"tag":20,"props":558,"children":559},{},[560,562,568,570,575,577,583],{"type":294,"value":561},"Откройте терминал в нужной папке и выполните ",{"type":455,"tag":24,"props":563,"children":565},{"className":564},[],[566],{"type":294,"value":567},"cargo new hello_world",{"type":294,"value":569},". Команда создаст директорию с файлом ",{"type":455,"tag":24,"props":571,"children":573},{"className":572},[],[574],{"type":294,"value":198},{"type":294,"value":576}," и папкой ",{"type":455,"tag":24,"props":578,"children":580},{"className":579},[],[581],{"type":294,"value":582},"src",{"type":294,"value":131},{"data":585,"body":586},{},{"type":452,"children":587},[588],{"type":455,"tag":20,"props":589,"children":590},{},[591,592,597,599,605],{"type":294,"value":222},{"type":455,"tag":24,"props":593,"children":595},{"className":594},[],[596],{"type":294,"value":204},{"type":294,"value":598}," в любом текстовом редакторе. Замените содержимое на ",{"type":455,"tag":24,"props":600,"children":602},{"className":601},[],[603],{"type":294,"value":604},"fn main() { println!(\"Привет, мир!\"); }",{"type":294,"value":131},{"data":607,"body":608},{},{"type":452,"children":609},[610],{"type":455,"tag":20,"props":611,"children":612},{},[613,615,620],{"type":294,"value":614},"Вернитесь в корневую папку проекта и выполните ",{"type":455,"tag":24,"props":616,"children":618},{"className":617},[],[619],{"type":294,"value":542},{"type":294,"value":621},". Система автоматически скачает зависимости, скомпилирует код и выведет результат в консоль.",[]]