chipsalliance / chipsalliance/rocket-chip
make failing under /emulator and /vcs due to mill: command not found
- Dominant language
- Scala
- Stars
- 3.9k
- Forks
- 1.3k
- Avg merge
- 5d 13m
- Merged PRs (30d)
- 1
Description
### Discussed in https://github.com/chipsalliance/rocket-chip/discussions/3492
Originally posted by **AnuragMalwee** September 20, 2023
Hi, I am building the rocket-chip project for the first time.
After building the rocket-tools, the make command under $ROCKETCHIP/emulator and $ROCKETCHIP/vcs directories fail with error:
```
cd ...../Rocket/rocket-chip && mill rocketchip.assembly
/bin/bash: line 1: mill: command not found
make: *** [/home/...../Rocket/rocket-chip/Makefrag:47: /home/...../Rocket/rocket-chip/out/rocketchip/assembly.dest/out.jar] Error 127
```
When trying to install mill from https://github.com/com-lihaoyi/mill, the cmd to run the bootstrap script recommended in their documentation fails.
$ curl -L https://github.com/com-lihaoyi/mill/releases/download/0.11.4/0.11.4-13-27c979 > mill && chmod +x mill
(The mill/releases dir doesn't seem to exist in the repo)
I manually copied the mill/mill script and ran it in the $ROCKETCHIP directory but I got following error:
```
anurag@anurag-vm:~/...../Rocket/rocket-chip$ ~/...../scala_mill/mill
[build.sc] [33/49] enablePluginScalacOptions.super.mill.scalalib.ScalaModule.enablePluginScalacOptions | Downloading [1/1][build.sc] [33/49] enablePluginScalacOptions.super.mill.scalalib.ScalaModule.enablePluginScalacOptions | Downloading [1/1][build.sc] [33/49] enablePluginScalacOptions.super.mill.scalalib.ScalaModule.enablePluginScalacOptions | Downloading [1/1][build.sc] [33/49] enablePluginScalacOptions.super.mill.scalalib.ScalaModule.enablePluginScalacOptions | Downloading [1/1][build.sc] [41/49] compile
[info] compiling 4 Scala sources to /...../Rocket/rocket-chip/out/mill-build/compile.dest/classes ...
[warn] /...../Rocket/rocket-chip/build.sc:206:155: method any2stringadd in object Predef is deprecated (since 2.13.0): Implicit injection of + is deprecated. Convert to String to call +
[warn] |"$${CMAKE_CXX_FLAGS} -DVERILATOR -DTEST_HARNESS=VTestHarness -include VTestHarness.h -include verilator.h -include ${generator.elaborate().path / config + ".plusArgs"}")
[warn] ^
[warn] one warning found
[info] done compiling
[build.sc] [49/49] scriptImportGraph
Selector cannot be empty
```
Contributor guide
Research direction
Start by reproducing the failing make commands under emulator and vcs, then inspect Makefrag:47 and the repository's build.sc. Check the reported Mill installation and “Selector cannot be empty” output. Done means the affected make commands run without “mill: command not found” or the reported Mill selector error.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- scala
- Domain
- build-system
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100