Skip to content

Commit

Permalink
update-riscv-and-xtensa.md
Browse files Browse the repository at this point in the history
  • Loading branch information
ing03201 committed Mar 9, 2024
1 parent b50db15 commit 7838828
Showing 1 changed file with 37 additions and 40 deletions.
77 changes: 37 additions & 40 deletions src/installation/riscv-and-xtensa.md
Original file line number Diff line number Diff line change
@@ -1,80 +1,77 @@
# `RISC-V` and `Xtensa` Targets
# `RISC-V` `Xtensa` 타겟

[`espup`][espup-github] is a tool that simplifies installing and maintaining the components required to develop Rust applications for the `Xtensa` and `RISC-V` architectures.
[`espup`][espup-github] `Xtensa``RISC-V` 아키텍처를 위한 Rust 어플리케이션을 개발하는 데 필요한 구성 요소의 설치 및 유지 관리를 단순화하는 도구입니다..

### 1. Install `espup`
### 1. `espup`설치

To install `espup`, run:
`espup`를 설치하려면, 아래 명령어를 터미널에 실행하세요:
```shell
cargo install espup
```

You can also directly download pre-compiled [release binaries][release-binaries] or use [`cargo-binstall`][cargo-binstall].
미리 컴파일된 [릴리스 바이너리][release-binaries]를 직접 다운로드하거나 [`cargo-binstall`][cargo-binstall]을 사용할 수도 있습니다.

[espup-github]: https://github.com/esp-rs/espup
[release-binaries]: https://github.com/esp-rs/espup/releases
[cargo-binstall]: https://github.com/cargo-bins/cargo-binstall

### 2. Install Necessary Toolchains
### 2. 필수 툴체인 설치

Install all the necessary tools to develop Rust applications for all supported Espressif targets by running:
다음을 실행하여 지원되는 모든 Espressif 대상에 대한 Rust 애플리케이션을 개발하는 데 필요한 모든 도구를 설치하십시오:
```shell
espup install
```

> ⚠️ **Note**: `std` applications require installing additional software covered in [`std` Development Requirements][rust-esp-book-std-requirements]
> ⚠️ **참고**: `std` 애플리케이션은 [`std` 개발 요구사항][rust-esp-book-std-requirements]에서 다루는 추가 소프트웨어를 설치해야 합니다.
[rust-esp-book-std-requirements]: ./std-requirements.md

### 3. Set Up the Environment Variables
`espup` will create an export file that contains some environment variables required to build projects.
### 3. 환경 변수 설정하기
`espup`은 프로젝트를 구축하는 데 필요한 몇 가지 환경 변수가 포함된 내보내기 파일을 만들 것이다.

On Windows (`%USERPROFILE%\export-esp.ps1`)
- There is **no need** to execute the file for Windows users. It is only created to show the modified environment variables.
Windows (`%USERPROFILE%\export-esp.ps1`)
- 이 파일을 실행할 **필요가 없습니다**. 수정된 환경변수를 보여주는 용도로 만든것입니다.

On Unix-based systems (`$HOME/export-esp.sh`). There are different ways of sourcing the file:
- Source this file in every terminal:
1. Source the export file: `. $HOME/export-esp.sh`
유닉스 기반 운영체제 - (`$HOME/export-esp.sh`). 파일을 sourcing하기위한 다른 방법들이 있습니다:
- 매 터미널에서 이 파일을 source하기:
1. 해당 파일을 source하기: `. $HOME/export-esp.sh`

This approach requires running the command in every new shell.
- Create an alias for executing the `export-esp.sh`:
1. Copy and paste the following command to your shell’s profile (`.profile`, `.bashrc`, `.zprofile`, etc.): `alias get_esprs='. $HOME/export-esp.sh'`
2. Refresh the configuration by restarting the terminal session or by running `source [path to profile]`, for example, `source ~/.bashrc`.
이 방식은 매 새 쉘을 열때마ㅏ 실행해줘야합니다.

- `export-esp.sh`를 실행하는 alias 만들기:

1. 쉘 프로파일 (`.profile`, `.bashrc`, `.zprofile`, 등.)에 다음 명령어를 복사 붙여넣기 하세요: `alias get_esprs='. $HOME/export-esp.sh'`
2. 터미널 세션을 재시작하시거나 `source [프로파일 경로]` 명령어를 실행하세요, 예를 들면, `source ~/.bashrc`.

이 방식은 매 쉘마다 sourcing을 안해도됩니다, `export-esp.sh`스크립트는 새로운 쉘이 실행될때 자동으로 실행됩니다.

This approach requires running the alias in every new shell.
- Add the environment variables to your shell profile directly:
1. Add the content of `$HOME/export-esp.sh` to your shell’s profile: `cat $HOME/export-esp.sh >> [path to profile]`, for example, `cat $HOME/export-esp.sh >> ~/.bashrc`.
2. Refresh the configuration by restarting the terminal session or by running `source [path to profile]`, for example, `source ~/.bashrc`.
### `espup`는 무엇을 설치하나요?

This approach **doesn't** require any sourcing. The `export-esp.sh` script will be sourced automatically in every shell.
Espressif 대상을 지원하기위해, `espup` 다음과 같은 도구를 설치합니다.

### What `espup` Installs
- Espressif 대상 지원을 위한 Espressif Rust fork
- `RISC-V` 대상을 위한 `nightly` 툴체인
- `Xtensa`대상을 위한 `LLVM` [fork][llvm-github-fork]
- final binary를 링크하는 [GCC 툴체인][gcc-toolchain-github-fork]

To enable support for Espressif targets, `espup` installs the following tools:
fork 컴파일러는 표준 Rust 컴파일러와 공존할 수 있으며, 둘 다 시스템에 설치할 수 있습니다. fork 컴파일러는 [오버로딩 메소드][rustup-overrides]를 사용할 때 호출됩니다.

- Espressif Rust fork with support for Espressif targets
- `nightly` toolchain with support for `RISC-V` targets
- `LLVM` [fork][llvm-github-fork] with support for `Xtensa` targets
- [GCC toolchain][gcc-toolchain-github-fork] that links the final binary
> ⚠️ **참고**: 우리는 fork를 업스트림하기위해 노력을 하고있습니다
> 1. `LLVM` fork에 변화는 이미 진행중입니다, [tracking issue][llvm-github-fork-upstream issue]를 확인하세요.
> 2. Rust 컴파일러 Fork들에 대해, LLVM 변경이 수락되면, 우리는 Rust 컴파일러 변경을 진행할 것입니다.
The forked compiler can coexist with the standard Rust compiler, allowing both to be installed on your system. The forked compiler is invoked when using any of the available [overriding methods][rustup-overrides].

> ⚠️ **Note**: We are making efforts to upstream our forks
> 1. Changes in `LLVM` fork. Already in progress, see the status in this [tracking issue][llvm-github-fork-upstream issue].
> 2. Rust compiler forks. If `LLVM` changes are accepted, we will proceed with the Rust compiler changes.
If you run into an error, please, check the [Troubleshooting][troubleshooting] chapter.
오류가 발생하면, [문제 해결][troubleshooting] 장을 확인하세요.

[llvm-github-fork]: https://github.com/espressif/llvm-project
[gcc-toolchain-github-fork]: https://github.com/espressif/crosstool-NG/
[rustup-overrides]: https://rust-lang.github.io/rustup/overrides.html
[llvm-github-fork-upstream issue]: https://github.com/espressif/llvm-project/issues/4
[troubleshooting]: ../troubleshooting/index.md

### Other Installation Methods for `Xtensa` Targets
### `Xtensa` Targets를 위한 다른 설치 방법

- Using [`rust-build`][rust-build] installation scripts. This was the recommended way in the past, but now the installation scripts are feature frozen, and all new features will only be included in `espup`. See the repository README for instructions.
- Building the Rust compiler with `Xtensa` support from source. This process is computationally expensive and can take one or more hours to complete depending on your system. It isn't recommended unless there is a major reason to go for this approach. Here is the repository to build it from source: [`esp-rs/rust` repository][esp-rs-rust].
- [`rust-build`][rust-build] 설치 스크립트 사용. 이것은 과거에 권장되는 방법이었지만, 이제 설치 스크립트는 기능이 frozen되었다., 모든 새로운 기능은 `espup`에만 포함될 것이다. 원본 Repository [README][https://github.com/esp-rs/rust-build.git]를 참조하십시오.
- 소스에서 `Xtensa` Rust 컴파일러를 구축하세요. 이 과정은 계산 비용이 많이 들고 시스템에 따라 완료하는 데 한 시간 이상이 걸릴 수 있습니다. 이 접근 방식을 취할 주요 이유가 없다면 권장되지 않습니다. 여기 소스에서 빌드할 리포지토리가 있습니다: [`esp-rs/rust` repository][esp-rs-rust].

[rust-build]: https://github.com/esp-rs/rust-build#download-installer-in-bash
[esp-rs-rust]: https://github.com/esp-rs/rust

0 comments on commit 7838828

Please sign in to comment.