This post is about how I got Vivado and the SDK running on Kubuntu 14.04 (64 bit) and talking to my microZed. It's possibly relevant to people running KDE on other platforms or other Debian based distros.
All of the stuff here has been covered by others but only in pieces.
I can't say for _sure_ that it's _all_ working. It's my first foray into Xilinx tools and programmable logic.
I _can_ say that I have just got through the "Hello World" tutorial:
- built the hardware design in Vivado
- exported it to the SDK.
- successfully single stepping the debugger via Digilent JTAG-HS2
- successfully seeing "Hello World" without any of the SDK etc crashing.
First of all, you need to get the SDK installed.
The workaround suggested by Xilinx worked ok for me:
<http://www.xilinx.com/support/answers/60088.html>
(I installed into ~/Xilinx instead of /opt/Xilinx)
Next, it appears Eclipse (the Xilinx SDK is based on it) can be flaky on (K)ubuntu
(See <http://stackoverflow.com/questions/14005164/eclipse-adt-bundle-fatal-error-not-able-to-start>
and <https://bugs.kde.org/show_bug.cgi?id=324438>)
If Xilinx SDK crashes on build, you might try changing:
System Settings - Application Appearance - GTK
- GTK2 Theme to something other than 'oxygen-gtk' (Raleigh is ugly but works)
There are the usual issues with USB serial ports and udev; I'll write something about that later if someone is interested.
I did put in a udev entry for the Digilent JTAG-HS2, but it appears that the Digilent installer also adds a udev entry.
(I used '/usr/local/lib' as the library path for the Digilent stuff)
Seems easiest to debug the JTAG interface with the "Hardware Manager" stuff in Vivado before the SDK; the UI makes more sense.
The last showstopper for me was the serial terminal console in the SDK. I was able to launch the debugger in the SDK and step through main() - everything went fine until print() and the SDK crashed. If this happens to you, the problem might be the serial driver.
See <https://bugs.launchpad.net/ubuntu/+source/openjdk-6/+bug/593172>
Use the library from the Ubuntu repositories like this:
cd XXX/Xilinx/SDK/2014.1/eclipse/lnx64.o/plugins/gnu.io.rxtx.linux.x86_64_2.1.7.3_v20071015/os/linux/x86_64
(where XXX is wherever you installed it)
mv librxtxSerial.so librxtxSerial.so.old
ln -sf /usr/lib/jni/librxtxSerial.so ./librxtxSerial.so
I'm not sure that any of the other workarounds suggested by two sites linked in another thread here are relevant for the 2014.1 Xilinx stuff or Kubuntu 14.04.
Those were:
<http://svenand.blogdrive.com/archive/165.html>
(I did try switching 'dash' to 'bash' but I'm not sure it did anything for me)
and
<https://engineering.purdue.edu/elab/html/wiki-xilinx-tools-on-ubuntu.html>
Both are worth a read for other content or if you're using older tools.