Install IOTA
In order to deploy your contracts and interact with the chains some tooling is required. IOTA Rebased has an excellent command-line tool that can be used for the most common tasks.
The simplest way to get up and running with IOTA is to install the binary from the latest release available in the IOTA Rebased GitHub Repository. Make sure to download the version that matches the network you want to work on.
You can also use the convenient docker images in the repository to run your own local network.
If you require full control over the installation sources and process, you can always build the binaries yourself from source.
Supported operating systems
IOTA supports the following operating systems:
- Linux - Ubuntu version 20.04 (Bionic Beaver) or later
- macOS - macOS Monterey or later
- Microsoft Windows - Windows 10 or later
Install From Binaries
You can find a set of binaries for most operating systems with each IOTA release that you can use to install IOTA. We recommend using the latest stable release for the network you are working on.
Once you have downloaded and extracted the .tgz
file that matches your operating system, you should open the folder
and
install the necessary binaries. You should start with the main IOTA binary.
- iota-
<OS>
-<ARCHITECTURE>
: Main IOTA binary. - iota-faucet-
<OS>
-<ARCHITECTURE>
: Local faucet to mint coins on a local network. - iota-indexer-
<OS>
-<ARCHITECTURE>
: An indexer for a local IOTA network. - iota-node-
<OS>
-<ARCHITECTURE>
: Run a local node. - iota-tool-
<OS>
-<ARCHITECTURE>
: Provides utilities for IOTA.
This process may take several minutes to download and install; this depends on your network and PC specifications.
Test
You can quickly test if you have successfully installed the binaries by running the following command:
iota
It should output a message stating the currently installed IOTA version and some helpful commands.
Install From Source
You can use this section to install the Rust crates (packages) to interact with IOTA networks, including the IOTA CLI, from source.
You can also download the source code to access files locally.
Prerequisites
Please ensure you install the following before attempting to install IOTA from source.
Rust and Cargo
Install
Like most Rust projects, IOTA uses Cargo as a package manager. You can find detailed instructions on how to install Rust and Cargo for your OS in the official Rust Documentation
You can use the following command to install Rust and Cargo on macOS or Linux:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
Update
Since IOTA uses the latest version of Cargo to build and manage dependencies, you may need
to update. The recommended update method is using rustup
, as shown below:
rustup update stable
Additional Prerequisites by Operating System
Select the appropriate tab to view the requirements for your system.
- Linux
- macOS
- Windows
The prerequisites needed for the Linux operating system include:
- cURL
- Rust and Cargo
- Git CLI
- CMake
- GCC
- libssl-dev
- libclang-dev
- libpq-dev
- build-essential
The Linux instructions assume a distribution that uses the APT package manager. You might need to adjust the instructions to use other package managers.
Install the prerequisites listed in this section. Use the following command to update apt-get
:
sudo apt-get update
All Linux prerequisites
Reference the relevant sections that follow to install each prerequisite individually, or run the following to install them all at once:
sudo apt-get install curl git-all cmake gcc libssl-dev pkg-config libclang-dev libpq-dev build-essential
cURL
Install cURL with the following command:
sudo apt-get install curl
Verify that cURL is installed correctly with the following command:
curl --version
Git CLI
Run the following command to install Git, including the Git CLI:
sudo apt-get install git-all
For more information, see Install Git on Linux on the GitHub website.
CMake
Use the following command to install CMake.
sudo apt-get install cmake
To customize the installation, see Installing CMake on the CMake website.
GCC
Use the following command to install the GNU Compiler Collection, gcc
:
sudo apt-get install gcc
libssl-dev
Use the following command to install libssl-dev
:
sudo apt-get install libssl-dev
If the version of Linux you use doesn't support libssl-dev,
find an equivalent package for it on
the ROS Index.
(Optional) If you have OpenSSL, you might also need also to install pkg-config
:
sudo apt-get install pkg-config
libclang-dev
Use the following command to install libclang-dev
:
sudo apt-get install libclang-dev
If the version of Linux you use doesn't support libclang-dev
, find an equivalent package for it on
the ROS Index.
libpq-dev
Use the following command to install libpq-dev
:
sudo apt-get install libpq-dev
If the version of Linux you use doesn't support libpq-dev
, find an equivalent package for it on
the ROS Index.
build-essential
Use the following command to install build-essential
:
sudo apt-get install build-essential
The prerequisites needed for the macOS operating system include:
- Rust and Cargo
- Homebrew
- cURL
- CMake
- libpq
- Git CLI
MacOS includes a version of cURL that you can use to install Homebrew. Use Homebrew to install other tools, including a newer version of cURL.
Homebrew
Use the following command to install Homebrew:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
You do not need to install anything else if you installed IOTA with Homebrew.
All macOS prerequisites
With Homebrew installed, you can install individual prerequisites from the following sections or install them all at once with this command:
brew install curl cmake libpq git
cURL
Use the following command to update the default cURL on macOS:
brew install curl
CMake
Use the following command to install CMake:
brew install cmake
To customize the installation, see Installing CMake on the CMake website.
libpq
Use the following command to install libpq:
brew install libpq
Git CLI
Use the following command to install Git:
brew install git
After installing Git, download and install the Git command line interface.
The prerequisites needed for the Windows 11 operating system include:
- cURL
- Rust and Cargo
- Git CLI
- CMake
- C++ build tools
- LLVM compiler
cURL
Windows 11 ships with an installed Microsoft version of cURL. If you want to use the curl project version instead, download and install it from https://curl.se/windows/.
Git CLI
Download and install the Git command line interface.
CMake
Download and install CMake from the CMake website.
Protocol Buffers
Download Protocol Buffers (protoc-xx.x-win32.zip or protoc-xx.x-win64.zip) and add the \bin directory to your Windows PATH environment variable.
Additional tools for Windows
IOTA requires the following additional tools for computers running Windows:
- For Windows on ARM64 only - Visual Studio 2022 Preview.
- C++ build tools is required to install Rust.
- The LLVM Compiler Infrastructure. Look for a file with a name similar to LLVM-15.0.7-win64.exe for 64-bit Windows or LLVM-15.0.7-win32.exe for 32-bit Windows.
Known issue - The iota console
command does not work in PowerShell.
Install IOTA Binaries From Source
Run the following command to install IOTA binaries from the testnet
branch:
cargo install --locked --git https://github.com/iotaledger/iota.git --branch testnet iota
Replace testnet
with another branch if needed when working on anything besides the testnet. Common options would be develop
for the absolute latest version, devnet
and mainnet
.
See the repository details for more information on commonly used branches.
The installation process can take a while to complete. You can monitor the installation progress in the terminal. If you encounter an error, install the latest version of all prerequisites and try the command again.
To update to the latest stable version of Rust:
rustup update stable
The command installs IOTA components in the ~/.cargo/bin
folder.
Upgrade IOTA Binaries
If you previously installed the IOTA binaries, you can update them to the most recent release with the same command you used to install them:
cargo install --locked --git https://github.com/iotaledger/iota.git --branch testnet iota