CLIでQuartusIIを使ってみる [FPGA]

通常、Linux版のQuartusIIをインストールするにはX環境が必要なんだけど、サーバーみたいなCLIのみの環境でも使えたのでまとめてみた。
環境はさくらVPSのCentOS 6.3/64bit

1.ダウンロード
まずアルテラのダウンロードページからQuartusII WebEditionのLinux版をダウンロードする。
デバイスライブラリはとりあえずCycloneIVだけ。

2.VPSに転送
SSHでログインして、SCPでcyclone-14.1.0.186.qrzとQuartusSetupWeb-14.1.0.186-linux.runをコピー。
.qrzは.runと同じディレクトリに置いておく。

3.インストール
実行パーミッションを追加してインストーラをテキストモードで起動

$ chmod +x QuartusSetupWeb-14.1.0.186-linux.run
$ ./QuartusSetupWeb-14.1.0.186-linux.run --mode text


4.環境変数を追加
.bashrcにパスを追加してシェルを再起動

PATH="$PATH":<ホームパス>/altera/14.1/quartus/bin

これで

$ quartus_sh --help

を実行してみてヘルプが出てくれば環境構築はOK

5.プロジェクトファイル
今回はサーバー側でコンパイルを走らせるのが目的なので、プロジェクトファイルは別に用意した。
WindowsやLinuxクライアント環境のQuartusIIでプロジェクトを作成し、qsfファイルとソースファイルをftpやscpでVPSの任意フォルダ(ここではqpf_workとする)に転送後

$ cd qpf_work
$ quartus_sh --flow compile <プロジェクト名>

でコンパイル→TimeQuest解析まで実行される。

コマンドラインスクリプトの詳細はQuartusIIハンドブック Vol.2 の Command Line Scripting(英語版PDF)を参照。

Linux環境メインの人はあんまり関係なさげだけども、Windows環境からデータを持っていく場合、日本語コードが混ざってるソースはUTF-8Nにしておくのが無難。
また、.shや.tclなどのスクリプトファイルについては改行コードもCR+LFからLFのみにしておかないと、CRが悪さをすることがあるので注意。