Skip to content

Resolução de problemas de instalação ​

Esta seção oferece dicas de solução de problemas para a instalação do Iroha 3. Se o problema que você está experimentando não for descrito aqui, entre em contato conosco através do Telegram.

Verificações rápidas ​

A maior parte das falhas de instalação ocorrem em um dos quatro lugares:

  • Uma cadeia de ferramentas Rust mais velha do que a versão fixada pelo espaço de trabalho ascendente
  • cargo ou rustc de resolução em uma instalação diferente da rustup;
  • Falta ferramentas de construção do sistema, como um compilador C, pkg-config, ou CMake
  • Esneptos ou artefatos de construção local gerados obsoletos após mudança de revisões da fonte

A partir do checkout da fonte Iroha, comece com:

bash
rustup show
cargo --version
rustc --version
cargo metadata --no-deps

Se cargo metadata falhar, corrija a cadeia de ferramentas local antes de executar pnpm refresh:iroha --source /path/to/iroha, porque a atualização pode invocar Kagami para gerar o esquema atual do modelo de dados.

Resolução de problemas Rust Cadeia de ferramentas ​

Às vezes, as coisas não vão como planejado. Especialmente se você tinha rust no seu sistema há algum tempo, mas não atualizou. Um problema similar pode ocorrer em Python: XKCD tem um exemplo famoso do que isso poderia parecer:

Python ambiente de solução de problemas comics

Verificação da versão Rust ​

No interesse de preservar tanto a sua como a nossa sanidade, certifique-se de que você tem a versão certa de cargo emparelhada com a versão correta de rustc. O espaço de trabalho upstream atual declara rust-version = "1.92" e pin o canal da cadeia de ferramentas em rust-toolchain.toml. Para mostrar as versões, fazer

bash
$ cargo -V
$ cargo 1.93.1 (...)

E depois ...

bash
$ rustc --version
$ rustc 1.93.1 (...)

Se você tem versões mais altas, você está bem. Se você tiver versões mais baixas, você pode executar o seguinte comando para atualizar:

bash
$ rustup toolchain update stable

Verificar o local da instalação ​

Se você conseguir números de versão mais baixos e você atualizar a cadeia de ferramentas e não funcionou... vamos dizer que é um problema comum, mas não tem uma solução comum.

Em primeiro lugar, você deve estabelecer onde a versão que deseja usar está instalada:

bash
$ rustup which rustc
$ rustup which cargo

As instalações do usuário das cadeias de ferramentas são geralmente em ~/.rustup/toolchains/stable-*/bin/.

bash
$ rustup toolchain update stable

E isso vai resolver os teus problemas.

Verifique a versão padrão Rust ​

Outra opção é que você tem a corrente de ferramentas stable atualizada, mas não está definida como padrão.

bash
$ rustup default stable

Instalar uma versão nightly ou configurar uma versão específica de Rust sem a desinstalar posteriormente pode causar esse problema.

Verificar se existem outras versões Rust ​

Continuando a solucionar problemas no buraco do coelho, poderíamos ter alias de conchas:

bash
$ type rustc
$ type cargo

Se estes apontam para outros locais que não o que você viu ao executar rustup which *, então tem um problema. Observe que adicionar pseudónimos como estes não é suficiente:

bash
$ alias rustc "~/.rustup/toolchains/stable-*/bin/rustc"
$ alias cargo "~/.rustup/toolchains/stable-*/bin/cargo"

A lógica interna ainda pode quebrar, independentemente da forma como arranjas os teus pseudónimos.

A solução mais simples seria remover as versões que não usam.

No entanto, é mais fácil dizer do que fazer, uma vez que implica o acompanhamento de todas as versões de rustup instaladas e disponíveis para você. A versão do gerenciador de pacotes do sistema e a que foi instalada no local padrão em sua pasta inicial quando você executou o comando no início deste tutorial. Para o primeiro, consulte seu manual de distribuição (Linux), apt remove rust .

bash
$ rustup toolchain list

E, em seguida, para cada <toolchain> (sem as parênteses de ângulo claro):

bash
$ rustup remove <toolchain>

Após a remoção das cadeias de ferramentas, este comando deve relatar um erro de comando não encontrado:

bash
$ cargo --help

Esse erro confirma que nenhuma cadeia de ferramentas Rust ativa permanece instalada.

bash
$ rustup toolchain install stable

Solução de problemas Python cadeia de ferramentas ​

Quando instalar o Python Embalagem de rodas com tubo durante Python configuração do cliente, Você pode encontrar um erro como: "iroha_Pitão...*.Não é uma roda com suporte nesta plataforma".

Este erro significa que o pip está desatualizado, por isso você precisa atualizá-lo. Primeiro de tudo, recomenda-se verificar a sua OS para atualizações e executar uma atualização do sistema.

Se isto não funcionar, você pode tentar atualizar pip para o seu diretório de usuários.

python -m pip install --upgrade pip

Certifique-se de que pip está instalado no seu diretório doméstico. Para fazer isso, execute whereis pip e verifique se /home/username/.local/bin/pip está entre os caminhos. Se não, atualize a variável PATH do seu shell.

Se o problema persistir, por favor. Contacte-nos . e relatar os resultados.

python --version
python3 --version
pip --version
pip3 --version