Skip to content

improve building without docker#46

Open
BracketMaster wants to merge 1 commit intoantonblanchard:masterfrom
BracketMaster:master
Open

improve building without docker#46
BracketMaster wants to merge 1 commit intoantonblanchard:masterfrom
BracketMaster:master

Conversation

@BracketMaster
Copy link

It's somewhat not-straightforward to build chiselwatt without
docker on Linux. For example, when setting Verilator=verilator we run into the following issues:

After playing around, I believe the best way to get around this is to just have another makefile,
namely, local.mk.

@BracketMaster BracketMaster changed the title poper support for local makefiles proper support for local makefiles Sep 27, 2021
@BracketMaster
Copy link
Author

dockerlator doesn't work on my Apple Silicon Mac since the upstream image is x86 only.
Building with a local verilator, yosys, scala, and ecppack works just fine on Apple Silicon however...

Signed-off-by: Yehowshua Immanuel <programmed4jesus@gmail.com>
@BracketMaster BracketMaster changed the title proper support for local makefiles improve building without docker Sep 27, 2021
@antonblanchard
Copy link
Owner

Thanks @BracketMaster! I just approved a PR from @carlosedp to use fusesoc for building, I wonder if that helps you too?

@BracketMaster
Copy link
Author

Not really. The issue is that the makefile as currently provided doesn't allow for
docker-free building of chiselwatt in verilator without the following changes:

  1. uncommenting these lines
  2. removing $(VERILATOR) here, here, and here.

@carlosedp
Copy link
Contributor

Instead of having another Makefile (that would bring more maintenance), I think a better approach is having some variable passed to make (like LOCALBUILD=true make) and have the ifs in the current Makefile to build with local tools instead.

Also as Anton mentioned, FuseSoc uses by default the local tools and doesn't use the Makefile so it could work in your case. FuseSoc only uses containers if you pass an EDALIZE_LAUNCHER variable as a launch script that wraps the tools in Docker containers.

@BracketMaster
Copy link
Author

oh - does fusesoc invoke verilator simulations too?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants