UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 14629

4.2i - Linux/WINE - クライアント/サーバー システム用 WINE 環境の上級設定

説明

キーワード : install, Linux, WINE, advanced, tips, setup, インストール, 上級, アドバンス, ヒント, セットアップ, 設定

重要度 : 標準

概要 :
このアンサーには、クライアント/サーバー環境において Linux/WINE でザイリンクス 4.2i ツール を使用する上級ユーザー用の情報が記載されています。

ソリューション

1

このアンサーには、複数ユーザーが 1 台 のサーバーにアクセスしてザイリンクス ソフトウェア ツールを使用できるよう、クライアント/サーバー環境で Linux/WINE システムを設定するためのガイドラインが記載されています。 ローカル PC での単一ユーザー用インストールについては、(ザイリンクス アンサー #13532) を参照してください。

コンフィギュレーションを行うには、サーバーへのルート権限が必要です。また、RedHat 7.2 と WINE のバージョン 20010731 以降をインストールしてあることが必要です。 which wine コマンドで WINE インストールを確認して「usr/bin/wine」メッセージが表示された場合、WINE は正しくインストールされており動作しています。 バージョンを確認するには、「wine -v」と入力します。 WINE は Red Hat 7.2 の 2 枚目の CD に含まれており、通常自動的にインストールされます。

インストール先の選択
次のステップにしたがって、ザイリンクス ソフトウェア環境マスタ インストールをサーバーに設定します。 Linux ファイルのツリー構造は通常、FHS (File-system Hierarchy Standard) にしたがっています。 この標準では、root の下の /opt ディレクトリにパッケージをインストールします。このディレクトリは、システム オペレーションに必要のないパッケージ用です (どのディレクトリを使用することもできます)。 以後、このインストール ディレクトリを your_server_dir と呼びます。

ザイリンクス用 WINE の設定
WINE Windows API エミュレータでは、Windows ディレクトリを Linux 環境の同等の位置にマップするエントリを含むコンフィギュレーション ファイルを使用します。 WINE を呼び出すと、まずホーム ディレクトリで config ファイルを含む .wine ディレクトリが検索されますが、見つからない場合は、/etc ディレクトリの wine.reg というデフォルトのコンフィギュレーション ファイルが使用されます。

この説明は、.wine ディレクトリで使用するザイリンクス固有のコンフィギュレーション ファイルを作成するためのものです。 WINE を他の Windows プログラムに使用しない場合、これらのコンフィギュレーションをデフォルトの wine.reg ファイルに適用することもできます。そうすると、各ユーザーがマスタ コンフィギュレーション ファイルをソースとして使用する必要がなくなります。

以下のステップを実行するには、Root としてログインする必要があります。

1. 次のディレクトリを作成します。
your_server_dir/xilinx (これは /opt/xilinx)
your_server_dir/xilinx/windows (Windows OS の c:\windows ディレクトリと同等)
your_server_dir/xilinx/windows/system (c:\windows\system ディレクトリと同等)
your_server_dir/xilinx/Xilinx (c:\Xilinx ディレクトリと同等)

オプションとして、このディレクトリ構造に your_server_dir/xilinx/synplicity などのサードパーティ ツールをインストールし、Linux でザイリンクス ツールとともに使用できます。

2. DLL ファイルの NETBIOS.DLL と NETAPI32.DLL を your_server_dir/xilinx/windows/system ディレクトリにコピーして、Windows 98 SE 環境をエミュレートします。 これが WINE 実行の推奨方法ですが、netapi32.dll、netrap.dll を使用して Windows NT 環境をエミュレートすることもできます。 Windows 2000 DLL はこのインストールでは使用できません。 これらの DLL ファイルは Windows マシンからネットワーク ファイル システムまたはフロッピー ディスク にコピーする必要があります。 また、インストールをテストできるよう、NOTEPAD.EXE も同じエリアにコピーします。

3. コンフィギュレーション ファイル wine.reg を /etc から your_server_dir/xilinx/config へコピーします。 (ファイル名を config に変更します。)

4. WINE コンフィギュレーション ファイル your_server_dir/xilinx/config を編集し、正しいパスを指定するようにします。 Drive C のエントリまでスクロール ダウンし、新たに作成された your_server_dir/xilinx ディレクトリを指定するよう編集します。 ドライブ D は /mnt/cdrom に指定されているはずです。

5. コンフィギュレーション ファイルをさらに wine セクションまでスクロール ダウンします。 PATH 変数に c:\\Xilinx および c:\\Xilinx\\bin\\nt を追加します。 パスにはダブル バックスラッシュ (\\) を付け、クォーテーション マークで囲む必要があります。

"Path" = "c:\\windows;c:\\windows\\system;e:\\;e:\\test;f:\\;c:\\Xilinx\\bin\\nt;c:\\Xilinx "

クライアントのセットアップと WINE コンフィギュレーションのテスト
各ユーザーはサーバーのマスタ コンフィギュレーションをソースとしてザイリンクス ツールを使用します。 この機能をテストするために、標準ユーザー名を使用してログインします。 ホーム ディレクトリに「.wine」ディレクトリを作成し、cd コマンドで「.wine」と入力します。 ln -sf your_server_dir/xilinx/ コマンドを実行して、マスタ コンフィギュレーション ファイルへのシンボリック リンクを作成します。 シンボリック リンクを確認するには、ls - al を実行します。リストに次のエントリが表示されます。

"lrwxrwxrwx 1 username techsup 26 May 15 15:30 config -> /export/vol1/xilinx/config"

これは、上で作成したマスタ コンフィギュレーション ファイルを参照する config というリンクが .wine ディレクトリにあることを示しています。

wine NOTEPAD.EXE を実行すると、NotePad が開き、WINE コンフィギュレーションが終了したことを示すメッセージが表示されるはずです。 メモ : 最初に WINE で NOTEPAD.EXE を実行するのに時間がかかる場合があります。ターミナル ウィンドウで多くのメッセージが表示されます。 これは通常の動作で、2 回目以降の WINE 実行では起こりません。

ザイリンクス ツールのインストール
1. PC バージョンのザイリンクス インストール CD を CD-ROM ドライブに入れ、ターミナル ウィンドウを開き cd mnt/cdrom を実行します。
2. 「wine setup」と入力します。
3. [Type of Installation] 画面で [Custom Installation] を選択します。
4. [Select Software Components to Install] 画面で [ISE Documentation]、[MuliLINX Cable Driver]、[Parallel Cable Drivers] チェック ボックスをオフにします。
5. [Update Your Environment] でどちらのチェック ボックスもオフにします。 -- PATH は WINE コンフィギュレーション ファイルで手動で設定し、XILINX 環境変数はログイン スクリプトまたはコマンド ラインで設定します。
6. セットアップ終了後、コンピュータを再起動しません。 [NO] を選択します。

環境変数の設定
ザイリンクス ツールを使用するには、環境変数を 2 つ設定する必要があります。 これらは your_server_dir/xilinx ディレクトリのスクリプトに設定でき、各ユーザーはそのスクリプトをソースとして使用します。 または、各ユーザーの .wine ディレクトリにコピーして、その環境変数をカスタマイズすることもできます。 次のコマンドで環境変数が異なるシェルに設定されます。

Bash シェル (Linux デフォルト) および K シェル :

1. export XILINX="c:\\Xilinx"
2. export XIL_LINUX_WINE=1

C シェル :

1. setenv XILINX "c:\Xilinx".
2. setenv XIL_LINUX_WINE 1.

ザイリンクス インストールのテスト
環境変数を設定するスクリプトを実行後、echo $XILINX を実行して、それが c:\Xilinx に設定されることを確認します。 echo $XIL_LINUX_WINE を実行して 1 に設定されることを確認します。

wine par コマンドや wine map コマンドなどで、ザイリンクス コマンド ライン ツールの実行を確認します。WINE で最初にプログラムを実行するとき、WINESERVER エントリを作成する必要があるため、時間がかかる場合があります。プログラムを実行しているターミナルでメッセージが表示されます。これは通常の動作で、2 回目以降の WINE 実行では起こりません。

Linux/WINE 環境でコマンドライン パラメータをザイリンクス ツールに渡す方法について、また既知の問題について、以下のソリューションを参照してください。

2

Linux/WINE 環境でコマンド ライン パラメータをザイリンクス ツールに渡す方法

WINE を使用していてザイリンクス コマンド ライン パラメータを修正せずに呼び出すと、スイッチが WINE コマンド ライン パラメータとして解釈されます。 WINE ではダブル ダッシュ (--) を使用して、それに続くパラメータが WINEにより呼び出されたとプログラムにより解釈されるようにします。 パラメータを正しく渡す方法は 2 つあります。

1. (推奨法) wine ngdbuild -- -p xcv50-6bg256 top.edf DESIGN_NAME.ngd

2. (別法) wine -- ngdbuild -p xcv50-6bg256 top.edf DESIGN_NAME.ngd

3

Linux/WINE のスクリプトおよびメモリ使用に関する既知の問題

以下の問題は WINE 環境に特有の問題で、ザイリンクス ツールの問題ではありません。 これらの問題は現在調査中で、将来の WINE リリースでの対処が期待されています。

スクリプトでの相対パスの使用
スクリプトを実行すると、次のようなエラーが表示される場合があります。 "The app <xdl.exe> cannot find the input file <test.xdl>". スクリプトで相対パスを使用していると、場合によっては、WINE では CWD (current working directory - 現在作業中のディレクトリ) が正しく認識されません。 この問題が発生した場合には、スクリプトで入出力ファイルへの完全パスを使用する必要があります。

WINE のメモリ使用に関する既知の問題

スクリプトを実行すると、メモリの使用に関して次の 2 つの問題が発生する場合があります。

1. 1 台の WINE サーバーで 2 つのジョブを同時に実行しようとすると (2 つの PAR インスタンスなど)、2 番目のプロセスでエラーが発生し、システムではメモリに余裕があるように見えても WINE はデバッグ モードになります。 これは WINE のメモリ割り当てが原因で、回避するには WINE サーバーを 2 台使用します。 2 つのジョブを開始する 2 つの別個のユーザー シェルを開くと実行できます。


2. クライアント アプリケーションで、ザイリンクス プログラムを実行するよう WINE を呼び出すジョブを送信しているときに、ジョブ キャンセル リクエストも送信すると、サーバー アプリケーションでザイリンクスのジョブがキャンセルされます。 アプリケーションは正常に終了されますが、メモリがリリースされない場合があります。 これによりメモリ リークが起こり、後続のジョブが実行できなくなります。 この問題を回避するには、管理者は ps -u <username> コマンドを使用して停止しているプロセスを見つけ、kill # でそのプロセスを中止してメモリをリリースする必要があります。
AR# 14629
日付 11/05/2003
ステータス アーカイブ
種類 一般
このページをブックマークに追加