Commit f5c20c8b authored by Jonas Kaufmann's avatar Jonas Kaufmann Committed by Antoine Kaufmann
Browse files

mention necessary submodule initialization for VSCode dev containers in README

parent 4c46ceb9
...@@ -33,10 +33,10 @@ Currently SimBricks includes the following simulators: ...@@ -33,10 +33,10 @@ Currently SimBricks includes the following simulators:
Depending on how you plan to use SimBricks, there are different ways to start Depending on how you plan to use SimBricks, there are different ways to start
using it. The quickest way to get started just running SimBricks is with our using it. The quickest way to get started just running SimBricks is with our
pre-built Docker container images. However, if you plan to make changes to [pre-built Docker container images](https://hub.docker.com/u/simbricks).
SimBricks, you will have to build SimBricks from source, either through Docker, However, if you plan to make changes to SimBricks, you will have to build
or on your local machine. The different ways are listed below in order of SimBricks from source, either through Docker, or on your local machine. The
increasing effort required. different ways are listed below in order of increasing effort required.
**Please refer to **Please refer to
[our documentation](https://simbricks.readthedocs.io/en/latest/) for more [our documentation](https://simbricks.readthedocs.io/en/latest/) for more
...@@ -84,8 +84,8 @@ simulation directly from your browser. ...@@ -84,8 +84,8 @@ simulation directly from your browser.
### Building Docker Images ### Building Docker Images
If you prefer to build the Docker images locally you will need `git`, `make`, and If you prefer to build the Docker images locally you will need `git`, `make`,
`docker build` installed on your system. Other dependencies should not be and `docker build` installed on your system. Other dependencies should not be
required. Now you are ready to build the docker images (depending on your system required. Now you are ready to build the docker images (depending on your system
this will likely take 15-45 minutes): this will likely take 15-45 minutes):
...@@ -102,13 +102,13 @@ main `simbricks/simbricks` image. ...@@ -102,13 +102,13 @@ main `simbricks/simbricks` image.
**We recommend this approach if you plan to modify or extend SimBricks.** **We recommend this approach if you plan to modify or extend SimBricks.**
This repository is pre-configured with a This repository is pre-configured with a [Visual Studio Code Development
[Visual Studio Code Development Container](https://code.visualstudio.com/docs/remote/containers) Container] (https://code.visualstudio.com/docs/remote/containers) that includes
that includes all required dependencies for building and working on SimBricks. all required dependencies for building and working on SimBricks. If you have
If you have Docker set up and the vscode remote containers extension installed, Docker set up and the vscode remote containers extension installed, you can just
you can just open a freshly cloned simbricks repo in vscode and vscode will open a freshly cloned simbricks repo in VSCode and VSCode will display a prompt
display a prompt to re-open the folder in the container. The vscode terminals to re-open the folder in the container. The VSCode terminals will also
will also automatically run any commands inside of the container. automatically run any commands inside of the container.
To compile the core SimBricks components simply run `make` (with `-jN` to To compile the core SimBricks components simply run `make` (with `-jN` to
use multiple cores). Note that by default, we do not build the Verilator use multiple cores). Note that by default, we do not build the Verilator
...@@ -118,13 +118,14 @@ libraries. These can be enabled by setting `ENABLE_VERILATOR=y ENABLE_RDMA=y` ...@@ -118,13 +118,14 @@ libraries. These can be enabled by setting `ENABLE_VERILATOR=y ENABLE_RDMA=y`
on the `make` command-line or by creating `mk/local.mk` and inserting those on the `make` command-line or by creating `mk/local.mk` and inserting those
settings there. settings there.
The previous step only builds the simulators directly in the SimBricks The previous step only builds the simulators directly contained in the SimBricks
repository. You likely also want to build at least some of the external repository. You likely also want to build at least some of the external
simulators, such as gem5, QEMU, or ns-3. You can either build all external simulators, such as gem5, QEMU, or ns-3. First, make sure their corresponding
simulators by running `make -jN external` (this could take multiple hours submodules are intialized via `git submodule update --init`. You can either
depending on your machine), or build them individually by running e.g. build all external simulators by running `make -jN external` (this could take
`make -jN sims/external/qemu/ready` (replace `qemu` with `gem5`, `ns-3`, multiple hours depending on your machine), or build them individually by running
or `femu` as desired). e.g. `make -jN sims/external/qemu/ready` (replace `qemu` with `gem5`, `ns-3`, or
`femu` as desired).
Next, to actually run simulations, you will also need to build the disk images Next, to actually run simulations, you will also need to build the disk images
with `make -jN build-images` (note this requires QEMU to be built first). with `make -jN build-images` (note this requires QEMU to be built first).
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment