From 5491173a0a8cdac9431a2ee8b13cb55ff5bfc678 Mon Sep 17 00:00:00 2001 From: Ben Keller Date: Thu, 23 Mar 2017 17:27:49 -0700 Subject: [PATCH 1/3] Publish firrtl locally first, to make Chisel happy --- Makefrag | 1 + 1 file changed, 1 insertion(+) diff --git a/Makefrag b/Makefrag index 7d1867d0..bdd7680e 100644 --- a/Makefrag +++ b/Makefrag @@ -12,6 +12,7 @@ lookup_scala_srcs = $(shell find $(1)/ -iname "*.scala" 2> /dev/null) libs: $(rocketchip_stamp) $(extra_stamps) $(rocketchip_stamp): $(call lookup_scala_srcs, $(ROCKETCHIP_DIR)) + cd $(ROCKETCHIP_DIR)/firrtl && sbt publish-local cd $(ROCKETCHIP_DIR) && $(SBT) pack mkdir -p $(lib_dir) cp $(ROCKETCHIP_DIR)/target/pack/lib/*.jar $(lib_dir) From 27095a4450eca830fda0ec1f3ecf9e398e306648 Mon Sep 17 00:00:00 2001 From: Ben Keller Date: Fri, 24 Mar 2017 10:06:01 -0700 Subject: [PATCH 2/3] Revert "Publish firrtl locally first, to make Chisel happy" This reverts commit 5491173a0a8cdac9431a2ee8b13cb55ff5bfc678. --- Makefrag | 1 - 1 file changed, 1 deletion(-) diff --git a/Makefrag b/Makefrag index bdd7680e..7d1867d0 100644 --- a/Makefrag +++ b/Makefrag @@ -12,7 +12,6 @@ lookup_scala_srcs = $(shell find $(1)/ -iname "*.scala" 2> /dev/null) libs: $(rocketchip_stamp) $(extra_stamps) $(rocketchip_stamp): $(call lookup_scala_srcs, $(ROCKETCHIP_DIR)) - cd $(ROCKETCHIP_DIR)/firrtl && sbt publish-local cd $(ROCKETCHIP_DIR) && $(SBT) pack mkdir -p $(lib_dir) cp $(ROCKETCHIP_DIR)/target/pack/lib/*.jar $(lib_dir) From 25bf3f7e01436312716df4ac9b2d59041183b1d6 Mon Sep 17 00:00:00 2001 From: Ben Keller Date: Fri, 24 Mar 2017 10:16:39 -0700 Subject: [PATCH 3/3] Update README with workaround for dependency issues --- README.md | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index f7633ef9..6fef0603 100644 --- a/README.md +++ b/README.md @@ -33,7 +33,19 @@ the following steps are necessary. To compile the example design, run make in the "verisim" directory. This will elaborate the DefaultExampleConfig in the example project. -It will produce an executable called simulator-example-DefaultExampleConfig. + +Note that due to mismanaged Chisel/Firrtl dependencies in the upstream +code, you may see an error like this: + + [error] (coreMacros/*:update) sbt.ResolveException: unresolved dependency: edu.berkeley.cs#firrtl_2.11;1.1-SNAPSHOT: not found + +You can work around this error by first building Firrtl and publishing +the jar locally: + + cd rocket-chip/firrtl; sbt publish-local + +Once these issues are resolved, an executable called +simulator-example-DefaultExampleConfig will be produced. You can then use this executable to run any compatible RV64 code. For instance, to run one of the riscv-tools assembly tests.