これはGentoo Advent Calendar 2016の12/09の記事です.
以前,大人の事情(?)でLinux上でXilinx Vivadoを使う必要があったので,蝶久し振りにGentooを某PCにぶっ込んでゴニョった時に作ったXilinx Vivado 2015.4.2_AR66788をGentoo/~amd64にインストールした時のメモを晒しておく.
# 仕事が忙し過ぎるので,ボブとジョニーはお休みです.
インストーラ(Xilinx_Vivado_SDK_2015.4_1118_2_Lin64.bin)は,unameでホスト環境を識別している様だが,sys-apps/coreutilsの/bin/unameだとコケるっぽい.
dev-libs/klibcの/usr/lib64/klibc/bin/unameを使う様にPATH指定すれば通る.
https://forums.xilinx.com/t5/Installation-and-Licensing/I-get-quot-ERROR-This-installation-is-not-supported-on-32-bit/m-p/669799#M13726
当該インストーラを含むjavaプログラムは,x11-wm/dwmの様なWMだと巧く動作しない.
環境変数_JAVA_AWT_WM_NONREPARENTING=1を指定すれば,巧く動く.
https://awesome.naquadah.org/wiki/Problems_with_Java
libstdc++.so.6でコケる事がある.
virtual/libstdc++-3.3は必要無いが,ホスト環境の当該共有ライブラリへln -sする必要がある.
NICのMACアドレスは,eth0しか見ていないっぽい.
GRUBとudevを弄るよりは,TUN/TAPで誤魔化した方が良さそう.
https://forums.xilinx.com/t5/Embedded-Development-Tools/License-problems-with-Vivado-2013-3-on-Linux-vlm-doesn-t-find/m-p/546651#M33747
http://billauer.co.il/blog/2015/01/vivado-license-activation-ubuntu-linux/
フローティングライセンスが抜けない.
FLEXNet関連のインストールっぽい以下のスクリプトを実行する事は,必要条件だが十分条件でないっぽい.
/opt/Xilinx/Vivado/2015.4/bin/unwrapped/lnx64.o/install_fnp.sh
https://forums.xilinx.com/t5/Installation-and-Licensing/Run-Vivado-2013-4-on-Debian/m-p/407359#M5914
Implementation終了時に,以下の内部例外(internal exception)が起きるっぽい.
java.lang.ClassCastException: sun.awt.image.BufImgSurfaceData cannot be cast to sun.java2d.xr.XRSurfaceData
UIのみに関係している様なので,.dcp/.bit/.bin等には影響は無さそう.
JDKのバグっぽい.
https://bugs.openjdk.java.net/browse/JDK-7172749
Vivado起動中にlsofで確認すると,
/opt/Xilinx/Vivado/2015.4/tps/lnx64/jre/lib/amd64/server/libjvm.so
を使っているっぽいので,virtual/{jdk,jre}は必要無い.
但し,x11-libs/libXtstが必要.
~amd64だと,ホスト環境にlibncurses.so.5が無い.
Vivado HLSに当該ライブラリがバンドルされているので,ln -sすれば良い.
Vivado HLSもlibncurses.so.5が適切なディレクトリに配置されていない為,同様に,ln -sする必要がある.
xic(Xilinx Information Center)は,${HOME}/.Xilinxを見てるっぽい.
sudoを使ったりした場合,ln -sやchown -Rで適宜統合しないと,適切なアップデート等が出来無い.
O HAI THIS BLOG PURPZIEZ 2 B UZED AZ MAH PLESIOUS MEM. :)