![]() |
実は殆んど名前だけしか知らなかったのだ。ダウンロードして初めて走らせてみたの は、ほんの3日前のこと。それも、やっとPCがOver 1GHzのクロックを手に入れ た記念事業の一環のような気持ちで始めたことだ。(流石に従来のCyrix 6x86MX-PR166では、Eclipseを入れようとは思い立たなかっただろう。元よりHDDに空 きが無くて、インストールすら出来なかったが)
なので、まだその真の実力を知ったとはとても言えない。
それでも、今までIDEなんてものは避けて通ってきた筆者が、 「CVSからのソース取得から、サンプルのビルドまでをシームレスに実行出来る 環境」に受けた印象は、世間の評判を裏打ちするものだった。
EclipseとHOS開発を結びつけることに興味を持った方々を読者と想定して、筆 者が実際に試みた導入の過程をここに記す。 その道の達者から見ればかなり酷いことをやってしまっているかもしれないが、 何か役に立つことが僅かでも含まれていれば幸いである。
日本語のEclipseに関する情報は、こちらのページに良くまとめられており、非常に参考になった。インストールや日本語 化などの一連の事柄は、そのままここからの受け売りである。
関係者の方々の努力に感謝と尊敬の意を表します。
2003.09.21 記 新井
2003.09.23 更改
ここで言うコンパイラとは、Windows上で動作するコンフィグレータを ビルドするためのコンパイラと、ターゲットシステム用のオブジェクトを吐き 出すクロスコンパイラの二つである。
また、makeも忘れてはならない。 詳しくは省くが、EclipseをC/C++のIDEとするプラグイン CDTは、makeを実行 することによりビルドを行なうのだ。
そこで用意するのは、やはりMinGW/MSYS ということになる。 http://sf.net/projects/mingw/ から、次のファイルを入手してインストールしておく。本稿では、デフォルトでの インストールを想定する。
この2つでコンフィグレータをビルドするために必要な、Windows上で動く実行形 式を吐くgccとmake等のツールは準備できる。次はクロスコンパイラである。
MinGW-3.1.0-1.exe MSYS-1.0.9.exe
クロスコンパイラもgccを用いる。事実上、他に選択の余地は無い。 3.3.1をh8300-gcc用にMinGW/MSYSでビルドしたものをインストールしておこう。 日立コンパイラでもやってやれないことはないだろうが、持っていない ので確認はしていない。
要するに、ここで前提としているのは その7. MinGWでGCCのクロス開発環境を で紹介した開発環境である。
あまりお勧めはしないが、トップページからビルド済の インストーラを持っていけば、クロスコンパイラも一発インストール出来る。
それと、EclipseにはJAVAのランタイムが必要なので、無ければSunのサイトか らJREを入手してインストールしておく必要がある。
次の3つのファイルを入手する。
作業はただアーカイブを展開するだけである。本稿ではD:\にインストールす るものとして記述していく。
a. eclipse-SDK-2.1.1-win32.zip ftp://ftp.ring.gr.jp/pub/misc/eclipse/downloads/drops/R-2.1.1-200306271545/ b. org.eclipse.cdt-win32_1.1.0.bin.dist.zip http://www.eclipse.org/cdt/ c. eclipse2.1.1-SDK-win-LanguagePackFeature.zip http://download2.eclipse.org/downloads/drops/L-2.1.x%20Translations-200307021300/index.php
まず、(a)と(c)をD:\に展開、次いで(b)をD:\eclipseに展開する。 以上。一行にもならない。「全部D:\に展開する」にならないのは、アーカイ ブファイル内のディレクトリ構成によるものである。
正しく展開が終わると、D:\eclipseは以下のようになっている。
![]() |
インストールしたディレクトリ |
後はデスクトップなりスタートメニューに、ショートカットを作成しておけば 良いだろう。アンインストールは、ただD:\eclipse以下を削除するだけで済む。
![]() |
Eclipse 起動 |
インストール作業はつつがなく完了したので、D:\eclipse\eclipse.exeを実行 する。
日本語化されたeclipseが起動したはずだ。
ここまで来れば、後は「統合環境」の名に恥じず、Eclipseの上だけで全てを 行なうことが出来る。(とはいえ、流石にまだSSHまでは組み込まれていないよ うなので、commiterとしての操作の為には、暗号鍵ペアの作成やSSHそのものの設 定等、外での作業が必要になるが、ここでは取り扱わないのでそういうことにしておく)
|
しかし、このままではC++のプロジェクトとなっていない。 そこで、このプロジェクトを変換することになる。 ナビゲータービュー、あるいはメニューのファイルから、 「新規」→「プロジェクト」を選択する。 新規プロジェクトのウィザードが立ち上がったはずだ。 「C++」(別に「C」でも同じだが…)の 「Convert to a C or C++ Project」を選択して「次へ」。 "config"のチェックボックス、hos4cfgはC++で書かれているので、「C++ Project」にチェックを入れ、「終了」 パースペクティブ切り替えの確認には取り敢えず「はい」 と答える。 C/C++ Developmentパースペクティブって何や?という疑問が出てくると おもうが、ここでは一々説明しない。「はい」を押したらでてくる 画面構成のことだろう。つまりは↓か。
configを選択して右クリックメニューから「プロパティ」を 選ぶと、C/C++プロジェクトであるconfigのプロパティを 開ける。ここでいくつかの設定を行う。 まずは「C/C++ Project」の「Build Settings」において Use Defaultのチェックを外し、
を入力する。フルパスで入力している訳は、トラブルを避ける 為である。個々の設定で確実にPATHが通っているならコマンドのみの 記述で構わない。これについては、後に出てくるMakefileの記述も同様。 続いて「Binary Parser」を「PE Windows Parser」にする。 今の所は大して意味は無い。いづれ意味があるようになる …かもしれない。
| ||||||||||||
|
|
さて、ここまで設定して「OK」したら、何やら下の方で動きがあって、 失敗したっぽい情報が「タスク」ビューに表示されたかもしれない。 だが、まだまだそんなことを気にしてはいけない。
|
「ナビゲータ」ビューからエクスプローラの要領でファイルを
選択してみよう。例としてanalyze.cppを開いてみる。 文字コードがEUCなので、化けてしまっているのが分かるだろう。 心配は無用だ。Eclipseのエディタは、勿論のことEUCにも対応している。 メニューの「ウィンドウ」→「設定」を呼び出そう。 「設定」→「ワークベンチ」→「エディター」を開いて、「テキストファイル エンコード」のチェックを「その他」に変え、「EUC-JP」と"入力" する。選択肢の中にEUC-JPは無い。"選択"ではなく"入力"だと いうことを勘違いしないように。 見事、ソースは文字化けなく表示された。 さて、それではそろそろ格好良くBuildするために、gcc.makに パッチを適用しよう…と書きたいところなのだが、そうは行かない。 どうもEclipse 2.1.1のパッチ適用には、日本語(EUC?)の問題があるよう なのか、うまくいかなかったのだ。
日本語の含まれていないファイルであれば、手元で編集 を加えたプロジェクトから「チーム」→「パッチの作成」で 生成したパッチ(CVSとの差分)を、 「チーム」→「パッチの適用」で難なく当てることが出来る。 しかし、日本語が(修正部分近くに?)含まれているファイルに関しては、パッチ自体の 作成は一応正しく出来ているようではあるのに、適用で「一致無し」 などと文句を言われてしまうのである。 CUIを苦にする向きでも、楽にパッチを作成したり適用したり出来る、使えそ うな機能なのだが… で、まぁ仕方ないので、ここに修正したgcc.makを 置いておく。 大した修正ではない。ツールの絶対パス指定とターゲット"all"の作成だけだ。 "all"は「Rebuild」等で使われる。 これをD:\eclipse\workspace\config\gcc.makにコピー していただきたい。 乱暴かつ、IDEって何?っていう悲しさが溢れてくるが、そこはもう少しEclipse に習熟してからということにしておこう。 で、気を取り直して「C/C++ Project」ビューのconfigの 右クリックメニューから、「Build」を実行。 見事hos4cfg.exeが生成された。 さて、これで大体CVSからソースを取得し、C/C++プロジェクト にしてビルドするまでの流れは紹介できた。大雑把かもしれな いが、ここまでの流れが分かれば、後はこの応用だ。 目標とするh83のサンプルのビルドの為には、コンフィグレータの他に カーネルソースとライブラリ、インクルードファイル、 h83用サンプルソースそのものが必要となる。 そこで、configでやった要領で「CVSリポジトリエクスプローラー」 から(そんなの画面に出てない等と泣き言を垂れてはいけない!見当たらない 場合の呼び出し方 は既に出ている!!)、includeとsrc、gcc(hos-v4/lib/h83/gcc)、 h83(hos-v4/sample/h83)をプロジェクトとしてチェックアウト する。
このように各ディレクトリをプロジェクトにするのが、果してEclipseの流儀
にかなったものなのかどうか、現時点ではまだ分からない。
いくつかのターゲットアーキテクチャを同時に扱うには、どうしたらCoolなのだろ
うか…。
gccとh83は、それでは何がなんだかわかりにくいので、 それぞれlib_h83gccとsample_h83に改名している。 プロジェクトのプロパティでは、「Build Settings」の「Build Commmand」を 適切に設定するのも忘れてはいけない。一方、「Binary Parser」は放置で構わない。 …本当なら、プロジェクトのプロパティについては、他プロジェクトの参照等 についても書いておくべきだが、もう面倒くさいので省略。(プロジェクト間の 参照関係を登録してあれば、自動的に操作対象プロジェクトを参照するものが 再ビルドされたりする。Makefileへの細工も加えないと不完全か…) で、config、lib_h83gcc、sample_h83の順でビルド。 configでWarningが出るけど、とにかくサンプルのビルド までは辿りつけた筈だ…
|
追伸:
実際の作業自体は大したことないのに、画面をキャプチャ
したり、一々「メニュー」→「*****」とか書くのはなんて
面倒なのだろう。
全くGUIという奴は困ったものだ。
デバッガについては全然触れていない。それさえ出来れば?
二伸:
読み返してみてもかなり不充分で、筆者がやったことを再現するだけでも、
Eclipseを使ったことがない方は、ひょっとしたら苦労するかもしれないと
気づいた。
そこで、とにかくこのメモが目指している「EclipseでHOS-V4 h83用サンプルの ビルド」が出来るようになっている状態を、誰でも確実に再現できるように、 workspaceをアーカイブしたものを置くことにする。
Eclipseのインストール の作業の後、 このファイルをD:\eclipseに展開するだけで完了。
workspace.tbz 120,145 bytes (9a3596e4e848647d0922702d30ba9e03)
勿論、前提としてMinGW/MSYSとh8300-gccのインストールは必要である。
三伸:
workspace.tbzをダイエットした。helpのインデックスやらなんやら、不必要な
ものが山ほど含まれていた。