Skip to content

Installing the Toolchains from outside icestudio

Juan Gonzalez-Gomez edited this page Jul 13, 2021 · 44 revisions

Contents

Introduction

Icestudio will install all the toolchains needed the first time it is executed. Or you can do it anytime from the Tools/Toolchain/Install menu option.

But it may ocurr that for whatever the reason (a bug or an uninstalled dependency) the toolchain cannot be installed

These are the steps you should follow in order to install the toolchains from the command console, outside icestudio

Ubuntu 20.04

Follow these steps for installing the FPGA toolchains for icestudio from the command line in Ubuntu 20.04

System setup

  • Install python3:
sudo apt install python3
  • Install the python virtual environment (venv)
sudo apt install python3-venv

Installing the virtual environment

  • Go to your home folder and enter into the .icestudio directory. That folder is created the first time icestudio is executed and it stores the configuration and the installed toolchains
cd ~/.icestudio
  • Remove all the files and folders within the .icestudio directory. You can do it graphically form the file manager or in the command line:
rm -r *
  • Install the python virtual environment with this command:
python3 -m venv venv

Installing Apio within the virtual environment

  • Execute the command pip from the virtual environment for installing the latest stable apio package
venv/bin/pip install apio
  • (Optional) If you need a specific apio version execute the previous command adding the version number:
venv/bin/pip install apio==0.5.4

Installing the toolchain

We will use Apio for downloading the toolchains needed. We want it to install the packages inside the .icestudio/apio folder

  • Set the APIO_HOME_DIR variable with the target folder for installing the toolchains:
export APIO_HOME_DIR=~/.icestudio/apio
  • Install all the toolchains
venv/bin/apio install -a

Run icestudio

Launch icestudio. It will ask you to select your board and then you are done!

Windows 10

Follow these steps for installing the FPGA toolchains for icestudio from the command line in Windows 10

System setup

  • Install python3:

Before installing anything, check if you already have python 3.6 or greather installed. Just open a windows command line (cmd) and execute this command python --version

C:\Users\Obijuan> python --version
Python 3.8.2

If the version is greather or equal to python 3.6, everything is fine. If you have another version or python is not installed, download the latest version from this site: Python downloads and install it

Once it is installed, open the command line and check again the version with the previous command: python --version

Installing the virtual environment

Icestudio uses the a virtual python environment for installing packages without conflicting with the packages already installed in your system.

  • Go to your home folder and enter into the .icestudio directory. That folder is created the first time icestudio is executed and it stores the configuration and the installed toolchains
C:\Users\Obijuan>cd .icestudio

C:\Users\Obijuan\.icestudio>
  • Remove the venv and apio folders if they exist. You can do it graphically form the file manager or in the command line:
C:\Users\Obijuan\.icestudio>rmdir /s venv
C:\Users\Obijuan\.icestudio>rmdir /s apio
  • Install the python virtual environment with this command:
C:\Users\Obijuan\.icestudio>python -m venv venv

Installing Apio within the virtual environment

  • Execute the command pip from the virtual environment for installing the latest stable apio package
C:\Users\Obijuan\.icestudio> venv\Scripts\pip install apio
  • (Optional) If you need a specific apio version execute the previous command adding the version number:
C:\Users\Obijuan\.icestudio> venv\Scripts\pip install apio==0.5.4

Installing the toolchain

We will use Apio for downloading the toolchains needed. We want it to install the packages inside the .icestudio/apio folder

  • Set the APIO_HOME_DIR variable with the target folder for installing the toolchains:
C:\Users\Obijuan\.icestudio> set APIO_HOME_DIR=%USERPROFILE%\.icestudio\apio
  • Install all the toolchains
C:\Users\Obijuan\.icestudio>venv\Scripts\apio install -a

Run icestudio

Launch icestudio. If you go to the Tools/Toolchain menu you will see the apio version that has been installed

You are ready to go!

Links


Getting started

Collections

  • Default: Icestudio Default Collection

Stable

Development

  • IceBoards: blocks and examples for the diferent FPGA boards
  • IceComp: Comparators
  • IceArith: Integer arithmetics
  • IceCounter: Counters
  • IceSignals: 1-bit signal managment
  • IcePLL: PLLs
  • IceLEDOscope: Measuring signals
  • IceLEDs: Displaying on LEDs
  • IceHearts: Timming signal generation
  • IceInputs: 1-bit inputs
  • IceRok: Block probes for Icestudio => Sigrok integration (with Pulseview GUI)
  • IceMachines: Working with Machines (simple state machines with a standar interface)
  • IceSerial: Serial Asynchronous communications
  • IceMem: Working with Memories
  • IceMeasure: Measuring cycles and time in your circuits, very easily
  • IceStack: Working with stacks
  • IceFlash: Read from spi serial flash memories
  • IceBus: Accesing and sharing simple buses
  • IceLCD: Components and controllers for LCDs
  • IceCrystal: Drive displays from Open Source FPGAs
  • ice-chips-verilog: IceChips is a library of all common discrete logic devices in Verilog
  • ArithmeticBlocks: FPGA signed and unsigned integer operations, 16, 24 and 32 bits, + - * / sqrt min max compare etc.
  • iceSynth: Audio synthesis
  • icebreaker: Blocks and examples for the icebreaker OpenFPGA board
  • Jedi: blocks of the FPGA Jedi hardware Academy
  • LOVE-FPGA: Hardware elements and examples for the LOVE-FPGA project (Linking Of Virtual Electronics to FPGAs)
  • Stdio: Standard Input-Output in different devices
  • CT11: Ejemplos del cuaderno ténico 11: Señales del sistema y Medición con el LEDOscopio
  • Generic: Icestudio Generic Collection
  • Logic: Icestudio Logic Collection
  • IceInterface: Serial, SPI, I2C... (TODO)

Testbenches

Developers

Contribute

HELP

Release history

Clone this wiki locally