mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-10-19 02:13:35 +08:00
Move PX4 Guide source into /docs (#24490)
* Add vitepress tree * Update existing workflows so they dont trigger on changes in the docs path * Add nojekyll, package.json, LICENCE etc * Add crowdin docs upload/download scripts * Add docs flaw checker workflows * Used docs prefix for docs workflows * Crowdin obvious fixes * ci: docs move to self hosted runner runs on a beefy server for faster builds Signed-off-by: Ramon Roche <mrpollo@gmail.com> * ci: don't run build action for docs or ci changes Signed-off-by: Ramon Roche <mrpollo@gmail.com> * ci: update runners Signed-off-by: Ramon Roche <mrpollo@gmail.com> * Add docs/en * Add docs assets and scripts * Fix up editlinks to point to PX4 sources * Download just the translations that are supported * Add translation sources for zh, uk, ko * Update latest tranlsation and uorb graphs * update vitepress to latest --------- Signed-off-by: Ramon Roche <mrpollo@gmail.com> Co-authored-by: Ramon Roche <mrpollo@gmail.com>
This commit is contained in:
co-authored by
Ramon Roche
parent
8e6d2ebe4a
commit
88d623bedb
@@ -0,0 +1,155 @@
|
||||
# Середовище розробки Windows (засноване на Cygwin)
|
||||
|
||||
:::warning
|
||||
This development environment is [community supported and maintained](../advanced/community_supported_dev_env.md).
|
||||
Це може працювати або не працювати з поточними версіями PX4.
|
||||
|
||||
Цей інструментарій був рекомендований раніше, але наразі не працює з PX4 v1.12 і новіше через проблеми з пакетами.
|
||||
The [Windows WSL2-Based Development Environment](../dev_setup/dev_env_windows_wsl.md) should be used by preference.
|
||||
|
||||
Дивіться [Встановлення інструментарію](../dev_setup/dev_env.md) для інформації про середовища та інструменти, що підтримуються основною командою розробників.
|
||||
:::
|
||||
|
||||
Наступні інструкції пояснюють як налаштувати (на базі Cygwin) середовище розробки на Windows 10 для PX4.
|
||||
Це середовище може бути використане для збірки PX4 для:
|
||||
|
||||
- Pixhawk та іншого апаратного забезпечення на основі NuttX
|
||||
- [jMAVSim Simulation](../sim_jmavsim/index.md)
|
||||
|
||||
<a id="installation"></a>
|
||||
|
||||
## Інструкції з установки
|
||||
|
||||
1. Download the latest version of the ready-to-use MSI installer from: [Github releases](https://github.com/PX4/windows-toolchain/releases) or [Amazon S3](https://s3-us-west-2.amazonaws.com/px4-tools/PX4+Windows+Cygwin+Toolchain/PX4+Windows+Cygwin+Toolchain+0.9.msi) (fast download).
|
||||
|
||||
2. Запустіть, оберіть потрібне місце установки, дочекайтесь встановлення:
|
||||
|
||||

|
||||
|
||||
3. Tick the box at the end of the installation to _clone the PX4 repository, build and run simulation with jMAVSim_ (this simplifies the process to get you started).
|
||||
|
||||
::: info
|
||||
If you missed this step you will need to [clone the PX4-Autopilot repository manually](#getting-started).
|
||||
|
||||
:::
|
||||
|
||||
:::warning
|
||||
At time of writing the installer is missing some dependencies (and cannot yet be rebuilt to add them - see [PX4-windows-toolchain#31](https://github.com/PX4/PX4-windows-toolchain/issues/31)).
|
||||
|
||||
Щоб додати їх самостійно:
|
||||
|
||||
1. Перейдіть в директорію встановлення інструментів (за замовчуванням **C:\\PX4\\**)
|
||||
2. Run **run-console.bat** (double click) to start the linux-like Cygwin bash console
|
||||
3. Введіть в консолі наступну команду:
|
||||
|
||||
```sh
|
||||
pip3 install --user kconfiglib jsonschema future
|
||||
```
|
||||
|
||||
:::
|
||||
|
||||
## Початок роботи
|
||||
|
||||
The toolchain uses a specially configured console window (started by running the **run-console.bat** script) from which you can call the normal PX4 build commands:
|
||||
|
||||
1. Перейдіть в директорію встановлення інструментів (за замовчуванням **C:\\PX4\\**)
|
||||
|
||||
2. Run **run-console.bat** (double click) to start the linux-like Cygwin bash console (you must use this console to build PX4).
|
||||
|
||||
3. Клонуйте репозиторій PX4 PX4-Autopilot з цієї консолі:
|
||||
|
||||
::: info
|
||||
Skip this step if you ticked the installer option to _clone the PX4 repository, build and run simulation with jMAVSim_.
|
||||
Клонування потрібно зробити тільки один раз!
|
||||
|
||||
:::
|
||||
|
||||
```sh
|
||||
# Clone the PX4-Autopilot repository into the home folder & loads submodules in parallel
|
||||
git clone --recursive -j8 https://github.com/PX4/PX4-Autopilot.git
|
||||
```
|
||||
|
||||
Тепер можна використовувати консоль/PX4-Autopilot репозиторій для збірки PX4.
|
||||
|
||||
4. Наприклад, для запуску JMAVSim:
|
||||
|
||||
```sh
|
||||
# Navigate to PX4-Autopilot repo
|
||||
cd Firmware
|
||||
# Build and runs SITL simulation with jMAVSim to test the setup
|
||||
make px4_sitl jmavsim
|
||||
```
|
||||
|
||||
Після цього консоль покаже:
|
||||
|
||||

|
||||
|
||||
## Наступні кроки
|
||||
|
||||
Після того, як ви закінчите налаштування інструментів командного рядка:
|
||||
|
||||
- Install the [QGroundControl Daily Build](../dev_setup/qgc_daily_build.md)
|
||||
- Continue to the [build instructions](../dev_setup/building_px4.md).
|
||||
|
||||
## Усунення проблем
|
||||
|
||||
### Інструменти моніторингу файлів проти швидкості інструментарію
|
||||
|
||||
Антивірус та інші інструменти моніторингу файлів у фоні можуть суттєво сповільнити встановлення інструментів та збірки PX4.
|
||||
|
||||
Можливо знадобиться тимчасово зупинити їх під час збірки (на власний розсуд).
|
||||
|
||||
### Windows & Git Special Cases
|
||||
|
||||
#### Символи закінчення рядків Windows CR+LF проти Unix LF
|
||||
|
||||
Ми рекомендуємо примусити використання закінчення рядків Unix LF для кожного репозиторію, з яким ви працюєте з цим інструментарієм (також використовуйте редактор, який залишає їх незмінними під час збереження змін, тобто Eclipse або VSCode).
|
||||
Compilation of source files also works with CR+LF endings checked out locally, but there are cases in Cygwin (e.g. execution of shell scripts) that require Unix line endings (otherwise you get errors like `$'\r': Command not found.`).
|
||||
На щастя, git може це зробити для вас, якщо виконаєте дві команди в кореневому каталозі вашого репозиторію:
|
||||
|
||||
```sh
|
||||
git config core.autocrlf false
|
||||
git config core.eol lf
|
||||
```
|
||||
|
||||
Якщо ви працюєте з цим інструментарієм в декількох репозиторіях, ви також можете встановити ці дві конфігурації глобально для вашого комп'ютера:
|
||||
|
||||
```sh
|
||||
git config --global ...
|
||||
```
|
||||
|
||||
Це не рекомендується, оскільки це може вплинути на будь-які інші (непов'язані) випадки використання git на вашій Windows машині.
|
||||
|
||||
#### Біт виконання прав доступу Unix
|
||||
|
||||
Під Unix є прапорець в правах доступу кожного файлу, який вказує на те, чи дозволено файлу виконуватись.
|
||||
_git_ under Cygwin supports and cares about that bit (even though the Windows NTFS file system does not use it).
|
||||
This often results in _git_ finding "false-positive" differences in permissions.
|
||||
Вивід diff в результаті може виглядати так:
|
||||
|
||||
```sh
|
||||
diff --git ...
|
||||
old mode 100644
|
||||
new mode 100755
|
||||
```
|
||||
|
||||
Ми рекомендуємо відключити глобально перевірку прав доступу у Windows, щоб уникнути проблем:
|
||||
|
||||
```sh
|
||||
# глобально відключити перевірку біту виконання для комп'ютера
|
||||
git config --global core.fileMode false
|
||||
```
|
||||
|
||||
Для наявних репозиторіїв, що мають цю проблему викликану локальною конфігурацією, додатково виконайте:
|
||||
|
||||
```sh
|
||||
# прибрати локальну конфігурацію, щоб застосувати глобальну
|
||||
git config --unset core.filemode
|
||||
|
||||
# прибрати локальну конфігурацію для всіх підмодулів
|
||||
git submodule foreach --recursive git config --unset core.filemode
|
||||
```
|
||||
|
||||
<!--
|
||||
Instructions for building/updating this toolchain are covered in [Windows Cygwin Development Environment (Maintenance Instructions)](../dev_setup/dev_env_windows_cygwin_packager_setup.md)
|
||||
-->
|
||||
Reference in New Issue
Block a user