Browse Source

Update notes.

Rob Austein 6 years ago
parent
commit
7f1c836258
2 changed files with 70 additions and 2 deletions
  1. 5 2
      Dockerfile
  2. 65 0
      README.md

+ 5 - 2
Dockerfile

@@ -2,6 +2,9 @@ FROM debian:jessie
 
 RUN echo 'deb http://deb.debian.org/debian jessie-backports main' > /etc/apt/sources.list.d/backports.list
 
+# An assortment of normal Debian packages.  Might want to move this to
+# after the horrible XiLinx stuff so we don't have to redo that very often.
+
 RUN apt-get update \
 	&& \
     apt-get install -y \
@@ -16,7 +19,7 @@ RUN apt-get update \
 	    reprepro \
 	    ubuntu-archive-keyring \
 	    ubuntu-dev-tools \
-    	    pbuilder \
+	    pbuilder \
 	&& \
     apt-get -t jessie-backports install -y \
-    	    debootstrap distro-info-data
+	    debootstrap distro-info-data

+ 65 - 0
README.md

@@ -18,3 +18,68 @@ dropped them into this directory with the filenames we expect.
 The third...is fun, in a demented sort of way.  Don't know whether
 it'll work yet, but going to try automating this using
 Xvfb, xautomation, and ratpoison.
+
+XiLinx voodoo from Berlin workshop notes
+----------------------------------------
+
+* You need to download the Xilinx ISE Design Suite.
+
+* Xilinx only supports specific versions of Red Hat and Suse Linux,
+  but it does run on Ubuntu and Debian, with the following caveat:
+  Ubuntu and Debian symlink `/bin/sh` to `/bin/dash`, which can't
+  handle `if [ ... ]` syntax in shell scripts.  Symlinking `/bin/sh`
+  to `/bin/bash` works.
+
+* The Xilinx tools are serious disk hogs: VMs for this need at least
+  30-40 GB of disk space.
+
+Step-by-step installation (Dockerfile will attempt to automate this):
+
+1. Unpack `Xilinx_ISE_DS_Lin_14.7_1015_1.tar` (or whatever version you have).
+2. `cd` to `Xilinx_ISE_DS_Lin_14.7_1015_1`, and run `sudo ./xsetup`
+3. Click through two screens of license agreements.
+4. Select ISE WebPACK.
+5. Unselect (or leave unselected) Install Cable Drivers.
+6. Go!
+
+Well, not quite. You will need to convince the ISE that you have a license.
+
+On the page
+http://www.xilinx.com/products/design-tools/ise-design-suite/ise-webpack.htm
+click on the Licensing Solutions link. On the resulting page, expand
+the section Obtain a license for Free or Evaluation product. To
+download the ISE Webpack, you should have created an account, so now
+you can go to the Licensing Site and use that account to create a
+Certificate Based License.
+
+You do not need to go through the HostID dance, just say Do It. You
+will then receive a certificate in email (not an X.509 certificate)
+which you will be able to use. Then start the ISE Webpack by issuing
+the command ise. Go to the Help menu and Manage Licenses. Use the
+resulting new License Manager window to install the `.lic` file. This
+process is complex and flakey.
+
+http://www.xilinx.com/support/download/index.html/content/xilinx/en/downloadNav/design-tools.html
+http://www.xilinx.com/products/design-tools/ise-design-suite/ise-webpack.htm
+http://www.armadeus.com/wiki/index.php?title=ISE_WebPack_installation_on_Linux
+
+With the license file already present this is simple: follow the installation
+instructions, tell it to use existing license file, it'll find it if
+you click the right buttons.  And yes, it's another GUI program.
+
+The ise binary referred to above is in `/opt/Xilinx/14.7/ISE_DS/ISE/bin/lin64/ise`
+(or in `.../lin/ise`, but the `pbuilder` setup requires a 64-bit build machine).
+
+It turns out you don't really need to run the whole ise tool to get to
+the license manager, you can just run the license manager directly,
+but you do have to source the appropriate settings file first, none of
+the XiLinx tools work properly without that.  So:
+
+```
+. /opt/Xilinx/14.7/ISE_DS/settings64.sh
+/opt/Xilinx/14.7/ISE_DS/common/bin/lin64/xlcm -manage
+```
+
+In theory, we can run this GUI stuff under `Xvfb` in Docker.
+Debugging this will probably require exporting the `Xvfb_screen0` file
+via a volume mount.