grin/doc/build_ZH-CN.md
Xavier Lau 0c6c464e94 Chinese translation (#3098)
* add: simplified Chinese translation
2019-11-26 14:57:01 +01:00

126 lines
4.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Grin - 构建,配置和运行
*阅读其它语言版本: [English](build.md), [Español](build_ES.md), [日本語](build_JP.md), [Korean](build_KR.md).*
## 支持的平台
从长远来看大多数平台都可能会得到一定程度的支持。Grin 的编写语言 `rust` 已为大多数平台建立了目标。
到目前为止进度:
* Linux x86\_64 and macOS [grin + 挖矿 + 部署]
* 暂时不支持 Windows 10 [部分 grin。暂时不支持挖矿。希望得到帮助]
## 要求
* rust 1.34+ (使用 [rustup]((https://www.rustup.rs/))- i.e. `curl https://sh.rustup.rs -sSf | sh; source $HOME/.cargo/env`)
* 如果已经安装过了 rust只需要运行 `rustup update` 升级版本
* clang
* ncurses 和 libs (ncurses, ncursesw5)
* zlib libs (zlib1g-dev or zlib-devel)
* pkg-config
* libssl-dev
* linux-headers (有报告指出在 Alpine linux 上是必需的)
* llvm
对于基于 Debian 的发行版DebianUbuntuMint 等一行就可以搞定rust 的安装除外):
```sh
apt install build-essential cmake git libgit2-dev clang libncurses5-dev libncursesw5-dev zlib1g-dev pkg-config libssl-dev llvm
```
macOS 用户:
```sh
xcode-select --install
brew install --with-toolchain llvm
brew install pkg-config
brew install openssl
```
## 构建步骤
```sh
git clone https://github.com/mimblewimble/grin.git
cd grin
cargo build --release
```
Grin也可以在 debug 模式下构建(不带 `--release` 参数,或是使用 `--debug``--verbose` 参数),但是由于加密的开销很大,这将影响快速同步的性能。
## 构建错误
详见 [故障排除](https://github.com/mimblewimble/docs/wiki/Troubleshooting)
## 构建得到了什么?
成功的构建可以提供给您:
* `target/release/grin` - grin 主要的二进制文件
默认情况下grin 创建和使用的所有数据,配置和日志文件都位于隐藏的 `~/.grin` 目录中(位于用户主目录下)。
您可以通过编辑文件 `~/.grin/main/grin-server.toml` 来修改所有配置。
也可以让 grin 在当前目录中创建其数据文件。只需要运行
```sh
grin server config
```
它将在当前目录中生成一个 `grin-server.toml` 文件,该文件已预先配置为使用当前目录中的所有数据。
在包含 `grin-server.toml` 文件所在的目录下运行 grin 将使用该文件中的配置,而不是默认的 `~/.grin/main/grin-server.toml`
在测试时,将 grin 二进制文件放在您的 `PATH` 中,如下所示:
```sh
export PATH=`pwd`/target/release:$PATH
```
假设您从 Grin 安装的根目录运行。
然后您可以直接运行 `grin`(尝试使用 `grin help` 获得更多选项)。
## 配置
Grin 尝试使用合理的默认值运行,并且可以通过 `grin-server.toml` 文件进行进一步配置。
该文件是在首次运行时由 grin 生成的,并且包含有关每个可用选项的文档。
虽然建议您通过 `grin-server.toml` 配置 grin 服务器,但也可以提供命令行开关以覆盖文件中的任何设置。
有关 grin 命令及其开关的帮助,请尝试:
```sh
grin help
grin wallet --help
grin client --help
```
## Docker
```sh
docker build -t grin -f etc/Dockerfile .
```
对于 floonet, 使用 `etc/Dockerfile.floonet` 代替
您可以绑定安装您的 grin 缓存以在容器中运行。
```sh
docker run -it -d -v $HOME/.grin:/root/.grin grin
```
如果您更喜欢使用名为 volume 的 docker则可以传递 `-v dotgrin: /root/.grin` 以替换。
使用命名卷在创建卷时会复制默认配置。
## 跨平台构建
Rustcargo可以在许多平台上构建 grin因此从理论上讲可以在低功耗设备上运行 `grin` 作为验证节点。要在 x86 Linux 平台上交叉编译 `grin` 并生成 ARM 二进制文件,例如,为一个 Raspberry Pi。
## 使用 grin
Wiki页面 [Wallet User Guide](https://github.com/mimblewimble/docs/wiki/Wallet-User-Guide) 和链接页面提供了有关我们提供的功能,故障排除等更多信息。
## 在 Grin 中挖矿
请注意,针对 Grin 的所有挖矿功能已移至一个名为 [grin-miner](https://github.com/mimblewimble/grin-miner) 的独立软件包中。
一旦您的 Grin 代码节点启动并运行,就可以通过针对正在运行的 Grin 节点构建并运行 grin-miner 开始挖矿。
为了使 grin-miner 能够与您的 grin 节点进行通信,请确保在您的 `grin-server.toml` 配置文件中有 `enable_stratum_server = true`,并且您正在运行钱包监听器(`grin wallet listen`)。