#+title: Installing Microchip Tools via podman or docker #+subtitle: This is a work in progress. It doesn't fully work yet. #+author: Penguin * Download the Libero and SoftConsole installers - Download Libero from [[https://ww1.microchip.com/downloads/secure/aemdocuments/documents/fpga/media-content/fpga/v2024-1/libero_soc_v2024.1_web_lin.zip][here]]. - Place it in ~./installers/~ - Download SoftConsole from [[https://ww1.microchip.com/downloads/secure/aemDocuments/documents/FPGA/media-content/FPGA/SoftConsole/v2022-2/Microchip-SoftConsole-v2022.2-RISC-V-747-linux-x64-installer.run][here]]. - Place it in ~./installers/~ Unzip libero: #+begin_src bash cd installers unzip Libero_soc_*.*_web_lin.zip cd .. #+end_src * [[https://docs.beagleboard.org/latest/boards/beaglev/fire/demos-and-tutorials/mchp-fpga-tools-installation-guide.html#request-a-libero-silver-license][Request a License from Microchip]] * Install the license #+begin_src bash :noeval mv /path/to/License.dat ./licenses/. #+end_src Open the license in a text editor and change these lines: #+begin_example SERVER 1702 DAEMON actlmgrd PATH/actlmgrd DAEMON mgcld PATH/mgcld VENDOR snpslmd PATH/snpslmd #+end_example to #+begin_example SERVER 1702 DAEMON actlmgrd /opt/microchip/Libero_SoC_v2024.1/Libero/bin64/actlmgrd DAEMON mgcld /opt/microchip/Libero_SoC_v2024.1/Libero/bin64/mgcld VENDOR snpslmd /opt/microchip/Libero_SoC_v2024.1/Libero/bin64/snpslmd #+end_example Your mac address should already be placed there so don't worry about that. * Edit the environment The environment script, located in =./scripts/env= contains the version of Libero and SoftConsole that you are installing. Change the versions to the correct versions if needed. The hostname of your *host* machine will be used by the container. We can use the following command to plop your hostname into the right places: #+begin_src bash :noeval sed -i "s//$(hostname)/g" ./scripts/env #+end_src * Build the container + Launch the licensing daemon #+begin_src bash make daemon #+end_src * Run libero from inside the container #+begin_src bash :noeval podman exec -it --user root libero bash . /opt/microchip/scripts/env libero #+end_src