WEB3DEV

Cover image for Instalando o SDK - Internet Computer
Diogo Jorge
Diogo Jorge

Posted on

Instalando o SDK - Internet Computer

Você pode fazer download e instalar a versão mais recente do SDK de contrato inteligente do pacote DFINITY, chamado dfx, executando o comando abaixo. Os tópicos aqui fornecem informações adicionais sobre como instalar, atualizar e remover o SDK.

dfxé suportado nativamente no Linux ou macOS 12.* Monterey ou posterior.

  • Instalar no Mac/Linux

Para instalar o dfx, execute

   sh -ci "$(curl -fsSL https://internetcomputer.org/install.sh)"

Enter fullscreen mode Exit fullscreen mode
  • Instalar no Windows

Não há suporte nativo para dfx no Windows. No entanto, ao instalar o Windows Subsystem for Linux (WSL), você também pode executar o dfx em um sistema Windows conforme descrito abaixo.

Instalando o WSL 2

Siga as instruções da Microsoft para instalar o Windows Subsystem for Linux. Verifique se você está executando o Windows 10 (versão 2004 ou superior) ou o Windows 11.

Versões WSL com suporte

Teoricamente, o WSL 1 e o WSL 2 devem permitir que você execute o dfx. No entanto, recomendamos o WSL 2. Aqui é possível encontrar uma comparação que explica as diferenças entre o WSL1 e o WSL 2.

Verifique sua versão do WSL

Execute o comando wsl –list –verbose (wsl -l -v)para verificar as distribuições Linux instaladas em sua máquina Windows. Abaixo está um exemplo de saída.

NAME        STATE      VERSION

* Ubuntu    Running     2
Enter fullscreen mode Exit fullscreen mode

Para saber mais sobre o comando wsl, verifique a referência de comando para WSL.

Atualizar do WSL 1

Se você tiver o WSL 1 instalado, siga as instruções de atualização para atualizar para o WSL 2. Basicamente, você precisa:

Executando Linux

Depois de instalar o WSL, você pode iniciar as distribuições Linux por nome.

Por exemplo,Ubuntu.exe é o comando para iniciar a distribuição do Ubuntu a partir da linha de comando.

Instalando o DFX

Depois de instalar o WSL, você pode instalar o dfx executando

   sh -ci "$(curl -fsSL https://internetcomputer.org/install.sh)"
Enter fullscreen mode Exit fullscreen mode

Problemas

Node.js não está instalado corretamente

WSL 2 tem o node.js 10.x.x instalado por padrão. Mas o dfx mais recente requer o node.js 16.0.0 ou superior.

Permissão negada ao executar o dfx start

Projetos criados a partir do dfx precisam estar no sistema de arquivos Linux em vez do sistema de arquivos Windows. Normalmente, cd ~ ou cd $HOME no terminal WSL o levará ao diretório inicial, e criar projetos lá deve funcionar.

Sem acesso à Internet no WSL

Se você não tiver acesso à Internet no WSL, por exemplo, você não pode executar ping em nenhum servidor com êxito, provavelmente o servidor de nomes no WSL está configurado para um proxy WSL interno. Você pode verificar o arquivo /etc/resolv.conf para ver se é o caso. Se for verdade, siga as etapas abaixo para definir um servidor de nomes válido:

  • Crie o arquivo /etc/wsl.conf e adicione o conteúdo abaixo a ele, isso impedirá que o WSL regenere o arquivo /etc/resolv.conf após a reinicialização.

    [network]
    generateResolvConf = false
    
  • Modifique o servidor de nomes no arquivo /etc/resolv.conf para um válido, por exemplo, o servidor de nomes doGoogle 8.8.8.8.

  • No Windows, reinicie o WSL para que essa correção tenha efeito.

wsl.exe --shutdown


---
Enter fullscreen mode Exit fullscreen mode

O que é instalado

O script de instalação do SDK instala vários componentes em locais padrão em seu computador local. A tabela a seguir descreve os componentes do ambiente de desenvolvimento que o script de instalação instala:

Componente Descrição Local padrão
dfx interface de execução da linha de comando (CLI) do DFINITY /usr/local/bin/dfx
moc Compilador de tempo de execução Motoko ~/.cache/dfinity/versions/< VERSION>/moc
replica Rede local binária da Internet Computer ~/.cache/dfinity/versions/<VERSION>/replica
uninstall.sh Script para remover o SDK e todos os seus componentes ~/.cache/dfinity/uninstall.sh
versions Diretório de cache que contém um subdiretório para cada versão do SDK que você instala. ~/.cache/dfinity/versions

Componentes principais em um diretório com versões

O diretório~/.cache/dfinity/versions armazena um ou mais subdiretórios com versões do SDK. Cada subdiretório com versões contém todos os diretórios e arquivos necessários para uma versão específica do SDK. Por exemplo, se você listar o conteúdo do diretório~/.cache/dfinity/versions/0.9.3, verá os seguintes componentes principais:

total 349192
drwxr-xr-x  17 pubs  staff      544 Mar 15 11:55 .
drwxr-xr-x   4 pubs  staff      128 Mar 25 14:36 ..
drwxr-xr-x  49 pubs  staff      1568 Mar 15 11:55 base
drwxr-xr-x  20 pubs  staff      640 Mar 15 11:55 bootstrap
-r-x------   1 pubs  staff  66253292 Mar 15 11:55 dfx
-r-x------   1 pubs  staff  10496256 Dec 31  1969 ic-ref
-r-x------   1 pubs  staff   5663644 Dec 31  1969 ic-starter
-r-x------   1 pubs  staff      9604 Dec 31  1969 libcharset.1.0.0.dylib
-r-x------   1 pubs  staff  38220 Dec 31  1969 libffi.7.dylib
-r-x------   1 pubs  staff  668300 Dec 31  1969 libgmp.10.dylib
-r-x------   1 pubs  staff  958248 Dec 31  1969 libiconv.2.4.0.dylib
-r-x------   1 pubs  staff      4200 Dec 31  1969 libiconv.dylib
-r-x------   1 pubs  staff  96900 Dec 31  1969 libz.1.2.11.dylib
-r-x------   1 pubs  staff  15417684 Dec 31  1969 mo-doc
-r-x------   1 pubs  staff  14634020 Dec 31  1969 mo-ide
-r-x------   1 pubs  staff  15111508 Dec 31  1969 moc
-r-x------   1 pubs  staff  49404128 Dec 31  1969 replica
Enter fullscreen mode Exit fullscreen mode

Diretório Motoko

O diretório baseno subdiretório de versões do SDK contém os módulos da biblioteca base Motoko que são compatíveis com essa versão do SDK. Como a biblioteca base do Motoko está evoluindo rapidamente, você deve usar apenas os módulos básicos que são empacotados com a versão do SDK que você instalou.

Diretório de bootstrap

O diretório de bootstrapcontém o código do servidor web que está obsoleto. A partir da versão 0.7.0, os agentes podem chamar um servidor de middleware HTTP em vez do código de bootstrap. Essa mudança permite que os pacotes respondam a solicitações HTTP diretamente e operem mais como aplicativos tradicionais baseados na web.

Atualizando para a versão mais recente

Se uma nova versão do SDK estiver disponível para download após a instalação inicial, instale a versão atualizada o quanto antes para obter as correções e aprimoramentos mais recentes o mais rápido possível. Você pode usar o comando dfx upgrade para comparar a versão atualmente instalada com a versão mais recente disponível para download. Se uma versão mais recente do dfxestiver disponível, o comando dfx upgrade baixará e instalará automaticamente a versão mais recente.

Observe que você não precisa desinstalar o software antes de instalar a nova versão. No entanto, se você deseja executar uma instalação limpa em vez de uma atualização, primeiro desinstale o software conforme descrito em Removendo o software e execute novamente o comando de download e instalação.

Para obter informações sobre os recursos e correções na versão mais recente, consulte as Notas da versão.

Instalando uma versão específica

O script de instalação procura a variável de ambiente DFX_VERSION para verificar se deve instalar uma versão específica do SDK ou simplesmente instalar a versão mais recente. Se você deseja instalar, por exemplo, a versão 0.11.1 especificamente, execute isto:

DFX_VERSION=0.11.1 sh -ci "$(curl -sSL https://internetcomputer.org/install.sh)"
Enter fullscreen mode Exit fullscreen mode

Configurando uma versão padrão

Se definido, o dfxsempre executará a versão especificada no dfx.json do projeto na chave "dfx". Por exemplo, se seu dfx.json contiver "dfx": "0.11.1", qualquer comando dfxexecutado dentro do diretório deste projeto será executado pelo dfxda versão 0.11.1. Caso a versão definida não esteja instalada (por exemplo, porque você clonou um repositório que foi criado para uma versão diferente da que você instalou localmente), o dfxreportará um erro.

Para definir um global (que é substituído pelas configurações específicas do projeto do dfx.json do projeto), execute o script de instalação com a versão desejada, mesmo que já esteja instalada.

Removendo o software

Quando você instalar o SDK, o script de instalação coloca os arquivos binários necessários em um diretório local e cria um cache. Você pode remover os binários e o cache do SDK do computador local executando o script uninstall localizado na pasta .cache.

Por exemplo:

~/.cache/dfinity/uninstall.sh
Enter fullscreen mode Exit fullscreen mode

Se você estiver desinstalando porque deseja instalar imediatamente uma versão limpa do dfx, execute o seguinte comando:



~/.cache/dfinity/uninstall.sh && sh -ci "$(curl -sSL https://internetcomputer.org/install.sh)"

Este artigo foi escrito por Severin Siffert e traduzido por Diogo Jorge. O artigo original pode ser encontrado [aqui](https://internetcomputer.org/docs/current/developer-docs/build/install-upgrade-remove/).

Enter fullscreen mode Exit fullscreen mode

Latest comments (0)