安装 | Installation

本指南将展示如何构建、安装和更新Curio二进制文件

Installation

安装

Debian package installation

Debian包安装

Curio软件包可直接在Ubuntu / Debian系统上安装。

目前Debian包只适用于主网。对于其他网络如校准网络或开发网,必须从源代码构建二进制文件。

  1. 安装先决条件

sudo apt install mesa-opencl-icd ocl-icd-opencl-dev gcc git bzr jq pkg-config curl clang build-essential hwloc libhwloc-dev wget -y && sudo apt upgrade -y
  1. 启用Curio软件包仓库

sudo wget -O /usr/share/keyrings/curiostorage-archive-keyring.gpg https://filecoin-project.github.io/apt/KEY.gpg

echo "deb [signed-by=/usr/share/keyrings/curiostorage-archive-keyring.gpg] https://filecoin-project.github.io/apt stable main" | sudo tee /etc/apt/sources.list.d/curiostorage.list

sudo apt update
  1. 根据您的GPU安装Curio二进制文件。

对于NVIDIA GPU:

sudo apt install curio-cuda

对于OpenCL GPU:

sudo apt install curio-opencl

Linux Build from source

Linux从源代码构建

您可以按照以下步骤从源代码构建Curio可执行文件。

Software dependencies

软件依赖

要安装和运行Curio,您需要安装以下软件。

System-specific

系统特定

构建Curio需要一些系统依赖,通常由您的发行版提供。

Arch:

sudo pacman -Syu opencl-icd-loader gcc git bzr jq pkg-config opencl-icd-loader opencl-headers opencl-nvidia hwloc

Ubuntu/Debian:

sudo apt install mesa-opencl-icd ocl-icd-opencl-dev gcc git bzr jq pkg-config curl clang build-essential hwloc libhwloc-dev wget -y && sudo apt upgrade -y

Fedora:

sudo dnf -y install gcc make git bzr jq pkgconfig mesa-libOpenCL mesa-libOpenCL-devel opencl-headers ocl-icd ocl-icd-devel clang llvm wget hwloc hwloc-devel

OpenSUSE:

sudo zypper in gcc git jq make libOpenCL1 opencl-headers ocl-icd-devel clang llvm hwloc && sudo ln -s /usr/lib64/libOpenCL.so.1 /usr/lib64/libOpenCL.so

Amazon Linux 2:

sudo yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm; sudo yum install -y git gcc bzr jq pkgconfig clang llvm mesa-libGL-devel opencl-headers ocl-icd ocl-icd-devel hwloc-devel

Rustup

Curio需要rustup。最简单的安装方法是:

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

Go

要构建Curio,您需要安装Go 1.21.7或更高版本

wget -c https://golang.org/dl/go1.21.7.linux-amd64.tar.gz -O - | sudo tar -xz -C /usr/local

您需要将/usr/local/go/bin添加到您的路径中。对于大多数Linux发行版,您可以运行类似以下的命令:

echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.bashrc && source ~/.bashrc

如果遇到困难,请参阅官方Golang安装说明

System Configuration

系统配置

在继续安装之前,您应该增加UDP缓冲区。您可以通过运行以下命令来实现:

sudo sysctl -w net.core.rmem_max=2097152
sudo sysctl -w net.core.rmem_default=2097152

Build and install Curio

构建和安装Curio

一旦所有依赖项都安装完毕,您就可以构建和安装Curio了。

  1. 克隆仓库:

git clone https://github.com/filecoin-project/curio.git
cd curio/
  1. 切换到最新的稳定版本分支:

git checkout <release version>
  1. 根据您的CPU型号,您需要导出额外的环境变量:

    1. 如果您有AMD Zen或Intel Ice Lake CPU(或更新版本),通过添加这两个环境变量来启用SHA扩展的使用:

     export RUSTFLAGS="-C target-cpu=native -g"
     export FFI_BUILD_FROM_SOURCE=1

    有关此过程的更多详细信息,请参阅Native Filecoin FFI部分

    1. 一些不支持ADX指令的较旧Intel和AMD处理器可能会出现非法指令错误。要解决这个问题,请添加CGO_CFLAGS环境变量:

    export CGO_CFLAGS_ALLOW="-D__BLST_PORTABLE__" export CGO_CFLAGS="-D__BLST_PORTABLE__"

    1. 默认情况下,proofs库中使用"multicore-sdr"选项。除非明确禁用,否则FFI也会使用此功能。要禁用使用"multicore-sdr"依赖项构建,请将FFI_USE_MULTICORE_SDR设置为0

    export FFI_USE_MULTICORE_SDR=0

  2. 构建和安装Curio: Curio被编译为在单个网络上运行。 选择您要加入的网络,然后运行相应的命令来构建Curio节点:

对于主网:

make clean build

对于校准测试网:

make clean calibnet

安装Curio:

sudo make install

这将把curio放在/usr/local/bin中。curio默认将使用$HOME/.curio文件夹。

运行curio --version

curio version 1.27.0-dev+mainnet+git.78d9d9baa

curio version 1.27.0-dev+calibnet+git.78d9d9baa

  1. 现在您应该已经安装了Curio。您现在可以完成Curio节点的设置

Native Filecoin FFI

原生Filecoin FFI

一些较新的CPU架构,如AMD的Zen和Intel的Ice Lake,支持SHA扩展。启用这些扩展可以显著加速您的Curio节点。要充分利用处理器的功能,请确保在从源代码构建之前设置以下变量:

export RUSTFLAGS="-C target-cpu=native -g"
export FFI_BUILD_FROM_SOURCE=1

这种构建方法不会产生可移植的二进制文件。确保您在构建它的同一台计算机上运行二进制文件。

MacOS Build from source

MacOS从源代码构建

您可以按照以下步骤从源代码构建Curio可执行文件。

Software dependencies

软件依赖

要从源代码构建Curio,您必须安装XCode和Homebrew。

XCode Command Line Tools

XCode命令行工具

在构建Curio二进制文件之前,需要安装X-Code CLI工具。

通过CLI检查是否已安装XCode命令行工具,运行:

xcode-select -p

这应该输出类似以下内容:

/Library/Developer/CommandLineTools

如果此命令返回一个路径,那么您已经安装了Xcode!您可以继续使用Homebrew安装依赖项。如果上述命令没有返回路径,请安装Xcode:

xcode-select --install

接下来是使用Homebrew安装Curio的依赖项。

Homebrew

Homebrew

我们建议macOS用户使用Homebrew安装每个必要的软件包。

使用命令brew install安装以下软件包:

brew install go bzr jq pkg-config hwloc coreutils

接下来是克隆Lotus仓库并构建可执行文件。

Rust

Rustup是系统编程语言Rust的安装程序。运行安装程序并按照屏幕提示操作。除非您熟悉自定义,否则应选择默认安装选项:

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

Build and install Curio

构建和安装Curio

安装说明因Mac中的CPU类型而异:

基于ARM的CPU

  1. 克隆仓库:

git clone https://github.com/filecoin-project/curio.git
cd curio/
  1. 切换到最新的稳定版本分支:

git checkout <release version>
  1. 创建必要的环境变量以允许Curio在ARM架构上运行:

export LIBRARY_PATH=/opt/homebrew/lib
export FFI_BUILD_FROM_SOURCE=1
export PATH="$(brew --prefix coreutils)/libexec/gnubin:/usr/local/bin:$PATH"
  1. 构建curio二进制文件:

make clean curio
  1. 运行最后的make命令将此curio可执行文件移动到/usr/local/bin。这允许您从任何目录运行curio

sudo make install
  1. 运行curio --version

curio version 1.27.0-dev+mainnet+git.78d9d9baa

curio version 1.27.0-dev+calibnet+git.78d9d9baa

  1. 现在您应该已经安装了Curio。您现在可以设置新的Curio集群或从Lotus-Miner迁移

Intel CPU

❗这些说明适用于在Intel Mac上安装Curio。如果您有基于ARM的CPU,请使用基于ARM的CPU说明 ↑

  1. 克隆仓库:

git clone https://github.com/filecoin-project/curio.git cd curio/

  1. 切换到最新的稳定版本分支:

git checkout <release version>
  1. 构建和安装Curio:

make clean curio
sudo make install
  1. 运行curio --version

curio version 1.27.0-dev+mainnet+git.78d9d9baa

curio version 1.27.0-dev+calibnet+git.78d9d9baa

现在您可以完成Curio节点的设置

Last updated