Hallo zusammen. Oft ist das Problem bei der FPGA-Entwicklung die Version von Vivado. Wenn es sich um ein Projekt handelt, das seit vielen Jahren läuft, gibt es Fälle, in denen der neueste Vivado nicht verwendet werden kann. Das Problem dabei ist, wenn Sie Vivado unter Linux ausführen müssen.
Laut der Xilinx-Seite als Linux, auf dem Vivado 2018.2 ausgeführt werden kann.
Ist aufgelistet. Alle von ihnen sind alte Betriebssysteme, die mindestens 3 Jahre alt sind. Selbst wenn Sie Vivado 2018.2 in Eile benötigen, ist es schwierig, einen PC mit einer neuen Umgebung anzupassen. Hier kommt Docker ins Spiel.
Zuerst habe ich das folgende Dockerfile vorbereitet.
FROM centos:7.4.1708
RUN yum update -y
RUN yum groupinstall -y "Development Tools"
RUN yum install -y kernel-devel kernel-headers
RUN yum install -y gtk2-devel
RUN yum install -y libcanberra libcanberra-devel
RUN yum install xauth libXtst libXrender -y
RUN yum install -y xeyes
RUN yum install -y sudo
RUN yum clean all
ARG uid=1000
ARG gid=1000
RUN groupadd -g ${uid} kohei && \
useradd -u ${gid} -g kohei -G wheel,root kohei && \
chown ${uid}:${gid} -R /home/kohei
RUN echo 'Defaults visiblepw' >> /etc/sudoers
RUN echo 'kohei ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers
USER kohei
WORKDIR /home/kohei
In Dockerfile werden eine Reihe von Entwicklungstools, eine Reihe von Dingen, die für den Betrieb als X11-Client erforderlich sind, und sudo installiert. Als ich es zum ersten Mal versuchte, fehlten einige Bibliotheken, also versuche ich, sie wieder gut zu machen.
Sie können damit auch ohne Passwort sudo.
Legen Sie das aus dieser Docker-Datei zu erstellende Image als centos_xil fest und erstellen Sie es mit dem folgenden Befehl.
docker build -t centos_xil .
docker run -ti --rm --name centos_xil \
-e DISPLAY=$DISPLAY \
-v /tmp/.X11-unix/:/tmp/.X11-unix \
-v /home/kohei:/home/kohei \
centos_xil /bin/bash
Hierbei ist zu beachten, dass die Anwendung zuerst auf der Seite des Gastbetriebssystems ausgeführt wird, sodass die GUI auf dem X-Server auf der Hostseite angezeigt wird. Die Umgebungsvariable "DISPLAY" wird an den Container übergeben, und die X11-Umgebung wird durch Mounten zwischen dem Container und dem Host gemeinsam genutzt. Als nächstes sollten Sie auch beachten, dass Sie Ihr Home-Verzeichnis freigeben. Wir möchten verhindern, dass das Image durch die Installation von Vivado aufgebläht wird, und die Probleme beim Austausch der Entwicklungsumgebung zwischen dem Container und der Hostseite vermeiden.
Führen Sie das Vivado-Installationsprogramm auf dem Container aus. Es ist eine gute Idee, einen temporären Dateispeicher in Ihrem Home-Verzeichnis zu erstellen und dort herunterzuladen. Möglicherweise können Sie das Verzeichnis "Downloads" mit einem japanischen Namen nicht aufrufen. Das Installationsziel wurde aufgrund von Problemen wie Berechtigungen auf "~ / Xilinx" festgelegt.
Durch Befolgen der obigen Schritte konnten wir bestätigen, dass Vivado und SDK ohne Probleme gestartet wurden.
Für Vivado konnte ich das Design problemlos kompilieren.
Recommended Posts