Sign inSign up

daverichmond/xilinx-ise

By daverichmond

•Updated about 7 years ago

Image
1

255

daverichmond/xilinx-ise repository overview

Xilinx ISE 14.7 toolchain

Please ignore this and build your own - I've tried to document that below. It uses a lot of disk space, and I need to get it into a remote repository so the vm I built it on can be cleaned up :/

Building an ise container requires multiple build steps. The following Dockerfile will build a build container:

FROM ubuntu:16.04

ADD ./assets/Xilinx_ISE_DS_Lin_14.7_1015_1.tar /xilinx-installer
WORKDIR /xilinx-installer

RUN useradd -m xilinx && \
	mkdir /opt/Xilinx && \
	chown -R xilinx /opt/Xilinx

RUN apt update && \
	apt install -y firefox xterm

We then run that container:

docker run \
		--name xilinx-ise-installer \
		-v /tmp/.X11-unix:/tmp/.X11-unix \
		-v /sys:/sys:ro \
		-e DISPLAY=${DISPLAY} \
		-u xilinx \
		-it xilinx-ise-build xterm

and in the terminal that pops up, we run the xsetup program. Once the installer finishes and we close the xterm, this needs to be tagged using "docker commit xilinx-ise-installer xilinx-ise-installer".

Now we can build our final container:

FROM ubuntu:18.04

COPY --from=xilinx-ise-installer /opt /opt

# other stuff...
RUN apt update && \
	apt install -y xterm && \
	useradd -m xilinx

COPY entrypoint.sh /entrypoint.sh

USER code
RUN mkdir /home/xilinx/.Xilinx && \
	touch /home/xilinx/.Xilinx/Xilinx.lic
WORKDIR /code

ENTRYPOINT /entrypoint.sh
CMD /bin/bash

The referenced entrypoint script is:

#!/bin/bash

. /opt/Xilinx/14.7/ISE_DS/settings64.sh

/bin/bash $@

The intermediate stages (xilinx-ise-build & xilinx-ise-installer) can now be deleted to free up space.

Finally, a script to easily handle bringing up this container will look like:

docker run -it --rm \
	-v $(pwd):/code \
	-v /tmp/.X11-unix:/tmp/.X11-unix \
	-v /sys:/sys:ro \
	-v ${HOME}/.Xilinx:/home/xilinx/.Xilinx \
	-e DISPLAY=${DISPLAY} \
	xilinx-ise $*

The container will probably need extension to add fairly standard tools like "make", that a lot of projects from the internet will rightfully so use.

Note: Haven't yet determined the best way of passing through impact/programming tools

Tag summary

Content type

Image

Digest

Size

8.4 GB

Last updated

about 7 years ago

docker pull daverichmond/xilinx-ise:14.7