an automated script in dev-env-setup git repo is needed which gets nextpnr-ecp5 and all build dependencies (includes trellis) to work under debian 10 recommended to test it under a debootstrap of debian 10 to ensure all dependencies (apt get install) are correctly recorded. this involves python boost which is known to be an absolute nuisance. also updating HDL_workflow to include it, on a sub-page.
Acknowledged. I will learn debootstrap and do. Any quick timeline within which to be done.
it's not time-critical. also really should not take that long although that depends on capability of machine you have. start from this: https://git.libre-soc.org/?p=dev-env-setup.git;a=blob;f=hdl-tools-yosys;hb=HEAD line 12-13 could be "mkdir fpga_tools" i have added you to dev-env-setup.git debootstrap is pretty damn easy. 2 lines. https://wiki.debian.org/Debootstrap main # mkdir /stable-chroot main # debootstrap stable /stable-chroot http://deb.debian.org/debian/ completing the install with the mount of proc and sysfs is important also you may find schroot helpful https://wiki.debian.org/Schroot you can see how to set up an automated schroot or at least see what commands to run https://git.libre-soc.org/?p=dev-env-setup.git;a=blob;f=coriolis2-chroot;hb=HEAD ... actually i'm going to try creating a chroot-creating script, based on that. please do check it.
Setting up new Bootstrap and chroot into it export MY_CHROOT=/stable-chroot mkdir $MY_CHROOT debootstrap stable $MY_CHROOT http://deb.debian.org/debian/ mount -t proc proc $MY_CHROOT/proc mount -t sysfs sysfs $MY_CHROOT/sys mount -t devpts devpts $MY_CHROOT/dev/pts/ chroot $MY_CHROOT /bin/bash Steps to compile Project Trellis Necessary software to install apt-get install git apt-get install python3 python3-dev clang cmake libboost-dev libboost-filesystem-dev libboost-thread-dev libboost-program-options-dev libboost-iostreams-dev openocd git clone --recursive https://github.com/YosysHQ/prjtrellis Build Project Trellis cd prjtrellis cd libtrellis cmake -DCMAKE_INSTALL_PREFIX=/usr/local/libtrellis . make make install Next I will find out procedure for nextpnr(-ecp5)
Steps to compile Project Nextpnr with ECP5 Necessary software to install apt-get install libeigen3-dev git clone --recursive https://github.com/YosysHQ/nextpnr Build Project nextpnr-ecp5 cd nextpnr cmake -DCMAKE_INSTALL_PREFIX=/usr/local/nextpnr-ecp5 -DARCH=ecp5 -DTRELLIS_INSTALL_PREFIX=/usr/local/libtrellis . make make install Please adjust the install paths for nextpnr and previous prjtrellis. Can you suggest a suitable filename for subpage in HDL_workflow. To be more clear do I have to put schroot steps in it.
(In reply to vklr@vkten.in from comment #4) > Steps to compile Project Nextpnr with ECP5 > > Necessary software to install excellent. > > Can you suggest a suitable filename for subpage in HDL_workflow. hmmm... i would say ECP5 but that is taken. HDL_workflow/nextpnr sound good? > To be more clear do I have to put schroot steps in it. no, i simply created the schroot script to make it easier and quicker for you to double-check
Added nextpnr page: https://libre-soc.org/HDL_workflow/nextpnr/ Added nextpnr section to page: https://libre-soc.org/HDL_workflow/ Review and give suggestions.
(In reply to vklr@vkten.in from comment #6) > Added nextpnr page: https://libre-soc.org/HDL_workflow/nextpnr/ > > Added nextpnr section to page: https://libre-soc.org/HDL_workflow/ > > Review and give suggestions. great, i made some minor formatting changes, to use markdown "indentation" (four spaces) https://libre-soc.org/HDL_workflow/nextpnr/?updated great, next step: * git clone gitolite3@git.libre-soc.org:dev-env-setup.git * run (create) a completely new chroot * make a "nextpnr-ecp5-install" script * add all those commands (from the new nextpnr page) to that script * test it and make sure that you have not missed any dependencies * git add, commit and push the (tested) nextpnr-ecp5-install script btw for goodness sake DO NOT blow away the "old" chroot WITHOUT FIRST UNMOUNTING THE mount-points. if you do "rm -fr /opt/chroot/whatever" it will try to blow away /tmp, /proc and other locations so mounted.
Added nextpnr-ecp5-install script to dev-env-setup.git url: https://git.libre-soc.org/?p=dev-env-setup.git;a=blob_plain;f=nextpnr-ecp5- install;hb=HEAD Adjust the installation path of libtrellis and nextpnr if need. e.g. to install them to /usr/local instead. Also the proc, sysfs and devpts are mounted and unmounted within the script. If not needed comment them out. Review and give suggestions.
ok looks good, i removed the mount/unmount because this will end up being run outside of chroot. also keeping it to under 80 chars. can you copy the style of hdl-tools-yosys, use "make -j$(nproc) and do the same preamble as in hdl-dev-repos. hmmm all these scripts need to be cd /home/$SUDO_USER/src
all of the build scripts are a bit of a mess i've cleaned them up to build in a consistent location, /home/$SUDO_USER/src please do git pull
Added make parallelization. chown and chgrp the downloaded repo's. Review.
that looks great. closing as resolved, can you link this on your page... ah! you already have! :) https://libre-soc.org/veera/