Building example design using Docker image#
The docker_shell
script is used as a prefix to launch a command using a OpenROAD docker image.
Also, the current working directory is mapped into the Docker image using the current user’s credentials.
Build docker image#
First build the docker image:
cd OpenROAD-flow-scripts
./build_openroad.sh
Build an example design and run the GUI:
cd flow
util/docker_shell make
util/docker_shell make gui_final
You can also launch an interactive bash session:
util/docker_shell bash
If you need to use a different Docker image than default, override by using the docker_shell_IMAGE
environment variable:
OR_IMAGE=openroad/flow-ubuntu22.04-builder:v1234 util/docker_shell make
If you have built your OpenROAD Docker image using prebuilt binaries, you might want to source custom paths for your modules as follows.
OR_IMAGE=openroad_prebuilt_image YOSYS_EXE=/oss-cad-suite/bin/yosys util/docker_shell make
Using docker_shell
from outside of OpenROAD-flow-scripts/flow
folder#
If you have designs you are keeping in a git source repository that is not
a fork of the OpenROAD-flow-scripts git repository, you can still use
the docker_shell
script.
Two ways to use docker_shell
Simply invoke it from the ORFS location.
Copy the script into your source folder. This would allow you to build and publish a Docker image to a private Docker repository and lock the ORFS version to the version of your source code. This gives you a way to deploy updates of ORFS easily, publish a new Docker image, modify the copy of
docker_shell
and create a pull request to possibly test your upgrade on your private build serves.