VirtualBox で 64bit Ubuntu13.10 に Vivado 入れようとしていますが、SDKで嵌りました。
その過程をメモしておきます。
前からトライしているのですが、なかなかうまく行きませんでした。
というか 大規模FPGAの合成に64bitは欲しい & Andoroid とか Ubuntu 64bit を必須としているビルド系もあるし(Zynq用にどうこうする技量は無いけど)、普段Winな私にとってはなかなか敷居が高かったです。
$ file /opt/Xilinx/SDK/2013.4/gnu/arm/lin/bin/arm-xilinx-eabi-gcc
/opt/Xilinx/SDK/2013.4/gnu/arm/lin/bin/arm-xilinx-eabi-gcc: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.16, stripped
$ /opt/Xilinx/SDK/2013.4/gnu/arm/lin/bin/arm-xilinx-eabi-gcc
bash: /opt/Xilinx/SDK/2013.4/gnu/arm/lin/bin/arm-xilinx-eabi-gcc: そのようなファイルやディレクトリはありません
ファイルあるのに無いといわれる。たぶん32bit系のなんかのライブラリが無いのだと思うけど、もうちょっと何か言ってくれぇ(悲鳴)。
とはいえ、CentOS を入れたおかげで、32bitバイナリ実行に足りないものは分かり始めてきたのでそれを頼りに検索。 sudo apt-get install ia32-libs すればいいらしいのだが…
~$ sudo apt-get install ia32-libs
パッケージリストを読み込んでいます… 完了
依存関係ツリーを作成しています
状態情報を読み取っています… 完了
パッケージ ia32-libs はデータベースには存在しますが、利用できません。
おそらく、そのパッケージが見つからないか、もう古くなっているか、
あるいは別のソースからのみしか利用できないという状況が考えられます
しかし、以下のパッケージで置き換えられています:
lib32z1 lib32ncurses5 lib32bz2-1.0
むむむ。
ならばこれでどうだ、
sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0
やった! 動くようになった!!!
ついでに
sudo apt-get install gcc-multilib
すれば、 -m32 で 32bitバイナリを作ることも出来るようになるらしい(未実験)。
コメント