chipsalliance / f4pga-examples

Example designs showing different ways to use F4PGA toolchains.
https://f4pga-examples.readthedocs.io
Apache License 2.0
263 stars 77 forks source link

EOS-S3 Tarball Issue / ql_symbiflow: command not found #162

Open mlaga97 opened 3 years ago

mlaga97 commented 3 years ago

The instructions for installing SymbiFlow found here state to download architecture definitions using the following command:

wget -qO- https://storage.googleapis.com/symbiflow-arch-defs-install/quicklogic-arch-defs-63c3d8f9.tar.gz | tar -xz -C $INSTALL_DIR/eos-s3/

However, upon doing this and attempting to build the examples, the following error is obtained.

(eos-s3) root@e28a048119eb:/test/symbiflow-examples/eos-s3# make -C btn_counter
make: Entering directory '/test/symbiflow-examples/eos-s3/btn_counter'
ql_symbiflow -compile -d ql-eos-s3 -P pd64 -v btn_counter.v -t top -p chandalar.pcf
make: ql_symbiflow: No such file or directory
make: *** [Makefile:10: all] Error 127
make: Leaving directory '/test/symbiflow-examples/eos-s3/btn_counter'

Poking around in $INSTALL_DIR/eos-s3/, it appears that the tarball is extracted to $INSTALL_DIR/eos-s3/quicklogic-arch-defs rather than $INSTALL_DIR/eos-s3/install as expected.

This issue doesn't exist with the xc7 architecture definitions because those have the files directly within the tarball whereas the eos-s3 tarball has the files within a directory within the tarball.

Several workarounds exist, but the one that is easiest for end users is to run the following:

rm -rf $INSTALL_DIR/eos-s3/install
mv $INSTALL_DIR/eos-s3/quicklogic-arch-defs/ $INSTALL_DIR/eos-s3/install/

On the maintainer side, the eos-s3 architecture definition tarball should be updated to omit the containing directory.

kgugala commented 3 years ago

hmm, the CI seems to be handling this correctly (see: https://github.com/SymbiFlow/symbiflow-examples/runs/3062350594?check_suite_focus=true).

Did you activate conda env before you call make?

GitHub
Build software better, together
GitHub is where people build software. More than 65 million people use GitHub to discover, fork, and contribute to over 200 million projects.