source: anotherchoice/tags/jsp-1.4.4-full-UTF8/doc/gnu_install.txt@ 26

Last change on this file since 26 was 26, checked in by ykominami, 12 years ago

initial

File size: 16.8 KB
Line 
1
2 = GNU開発環境構築マニュアル =
3
4 (Release 1.4対応,最終更新: 20-Dec-2003)
5
6------------------------------------------------------------------------
7 TOPPERS/JSP Kernel
8 Toyohashi Open Platform for Embedded Real-Time Systems/
9 Just Standard Profile Kernel
10
11 Copyright (C) 2000-2003 by Embedded and Real-Time Systems Laboratory
12 Toyohashi Univ. of Technology, JAPAN
13
14 上記著作権者
15は,以下の (1)〜(4) の条件か,Free Software Foundation
16 によってå…
17¬è¡¨ã•ã‚Œã¦ã„ã‚‹ GNU General Public License の Version 2 に記
18 述されている条件を満たす場合に限り,本ソフトウェア(本ソフトウェア
19 を改変したものを含む.以下同じ)を使用・複製・改変・再é…
20å¸ƒï¼ˆä»¥ä¸‹ï¼Œ
21 利用と呼ぶ)することを無償で許諾する.
22 (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
23 権表示,この利用条件および下記の無保証規定が,そのままの形でソー
24 スコード中に含まれていること.
25 (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
26 用できる形で再é…
27å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œå†é…
28å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨
29 者
30マニュアルなど)に,上記の著作権表示,この利用条件および下記
31 の無保証規定を掲載すること.
32 (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
33 用できない形で再é…
34å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œæ¬¡ã®ã„ずれかの条件を満たすこ
35 と.
36 (a) 再é…
37å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨è€…
38マニュアルなど)に,上記の著
39 作権表示,この利用条件および下記の無保証規定を掲載すること.
40 (b) 再é…
41å¸ƒã®å½¢æ…
42‹ã‚’,別に定める方法によって,TOPPERSプロジェクトに
43 報告すること.
44 (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
45 害からも,上記著作権者
46およびTOPPERSプロジェクトをå…
47è²¬ã™ã‚‹ã“と.
48
49 本ソフトウェアは,無保証で提供されているものである.上記著作権者
50お
51 よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も
52 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直
53 接的または間接的に生じたいかなる損害に関しても,その責任を負わない.
54
55 @(#) $Id: gnu_install.txt,v 1.26 2003/12/20 09:13:20 honda Exp $
56------------------------------------------------------------------------
57
58
591.GNU開発環境の構築
60
61
621.1 開発環境の概要
63
64カーネルをインストールするには,JSPカーネルのé…
65å¸ƒã‚­ãƒƒãƒˆã«å«ã¾ã‚Œã‚‹ä»¥å¤–
66に,以下のツールおよびライブラリが必
67要である.
68
69 GNU開発環境
70 BINUTILS(アセンブラ,リンカなど)
71 GCC-CORE(Cコンパイラ)
72 GDB(デバッガ)
73 NEWLIB(標準Cライブラリ)
74 perl(動作確認は 5.005)
75 GNU Make(動作確認は 3.77)
76
77各ツールのバージョンについては,ターゲット毎に異なるため,ターゲット毎
78のマニュアルを参ç…
79§ã®ã“と.
80
81アプリケーションが標準Cライブラリを使用しない場合には NEWLIB は必
82要な
83いが,GCC をインストールする際に NEWLIB があった方が都合がよいため,
84NEWLIB も含めてインストールする方法を標準とする.NEWLIB をインストール
85しない場合には,GCC のソースの修正が必
86要となり, GCC の 2.95.3 を対象
87として後述する.ターゲットへのダウンロードと実行を ROMモニタ(GDB に対
88応していないもの)によって行う場合には,GDB をインストールする必
89要はな
90い.
91
92perl と GNU Make は,ほとんどの Linux と Cygwin では標準でインストール
93されるため,新たにインストールする必
94要はない.インストールされている
95perl または make のバージョンを知りたい場合には,-v オプションをつけて
96実行すればよい(-v オプションをサポートしていない make は GNU make で
97はない).なお,以下の説明では,makeコマンドが GNU Make であるものとす
98る.
99
100また,これらの開発環境を Windows上に構築するためには Cygwin を用いる.
101
102 Cygwin(動作確認は 1.5.5)
103
104Cygwinのインストールについては後述する.また,ツールのソースコードを修
105正する必
106要があるが,これも後述する.
107
108これらのツールおよびライブラリのソースコードは,次のサイトからå…
109¥æ‰‹ã™ã‚‹
110ことができる.
111
112 BINUTILS,GCC-CORE,GDB,GNU Make:
113 GNUプロジェクト http://www.gnu.org/
114 Ring Server http://www.ring.gr.jp/
115
116 NEWLIB:
117 Red Hat http://sources.redhat.com/newlib/
118 または ftp://sources.redhat.com/pub/newlib/
119
120 Cygwin:
121 Red Hat http://sources.redhat.com/cygwin/
122 または ftp://sources.redhat.com/pub/cygwin/
123 Ring Server http://www.ring.gr.jp/
124
125
1261.2 開発環境の構築方法
127
128この節では,開発環境の構築方法を説明する.開発環境を Windows上に構築す
129る場合には,あらかじめ Cygwin をインストールしておくことが必
130要である.
131Cygwin のインストール時の注意事項
132は,1.3節で述べる.
133
134(1) 準備作業
135
136ホスト上に必
137要なツールが足りない場合には,あらかじめインストールしてお
138く.å…
139·ä½“的には,perl と GNU Make が必
140要である.さらに,開発環境の構築
141に使うために,ホスト上にも最新の GCC をインストールしておくことが望ま
142しい.
143
144なお,JSPカーネルのé…
145å¸ƒã‚­ãƒƒãƒˆã«å«ã¾ã‚Œã‚‹ perlスクリプトは,perl のプロ
146グラムが /usr/bin/perl にあるものと仮定して記述している.perl のプログ
147ラムのパスがこれと異なる場合は,各 perlスクリプトのå…
148ˆé ­ã® perl の絶対
149パスを修正する必
150要がある.
151
152(2) ソースファイルの展開
153
154BINUTILS,GCC-CORE,GDB,NEWLIB のソースファイルを展開する.以下では,
155展開により作成されたディレクトリ名をそれぞれ次のように表記する.
156
157 <BINUTILS-SRCDIR> BINUTILS のソースを展開したディレクトリ
158 <GCC-SRCDIR> GCC-CORE のソースを展開したディレクトリ
159 <GDB-SRCDIR> GDB のソースを展開したディレクトリ
160 <NEWLIB-SRCDIR> NEWLIB のソースを展開したディレクトリ
161
162(3) 開発環境構築のためのディレクトリの決定
163
164開発環境を構築するために,以下のディレクトリを用意する.
165
166 <PREFIX> 開発環境をインストールするディレクトリ
167 <BINUTILS-OBJDIR> BITUTILS のオブジェクトを生成するディレクトリ
168 <GCC-OBJDIR> GCC-CORE のオブジェクトを生成するディレクトリ
169 <GDB-OBJDIR> GDB のオブジェクトを生成するディレクトリ
170 <NEWLIB-OBJDIR> NEWLIB のオブジェクトを生成するディレクトリ
171
172<PREFIX>/bin が実行パスに含まれるようにシェルの設定を行っておく.また,
173make install は,<PREFIX> 以下に書き込み権限があるユーザで行う必
174要があ
175る.
176
177(4) ターゲットの選択
178
179ターゲットプロセッサに応じて,ターゲット環境を選択する.å…
180·ä½“的には,次
181の通り.
182
183 プロセッサ ターゲット環境(<TARGET>)
184 M68040 m68k-unknown-elf
185 SH1, SH3 sh-hitachi-elf
186 V850 v850-nec-elf
187 H8 h8300-hms
188 ARM arm-elf
189 M32R m32r-elf
190 Microblaze mb
191 mips3 mipsel-nec-elf
192 Xstormy16 xstormy16-elf
193
194以下,ターゲット環境を表す文字列を <TARGET> と表記する.
195
196なお,ターゲットによっては,ツールまたはライブラリのソースコードの修正
197が必
198要な場合がある.修正内
199容については,ターゲット毎のマニュアルに記述
200する.
201
202(5) BINUTILS のインストール
203
204BINUTILS は,GCC-CORE のインストールに必
205要なため,GCC-CORE にå…
206ˆã ã£ã¦
207インストールする.BINUTILS のインストール手順は次の通り.
208
209 % mkdir <BINUTILS-OBJDIR>
210 % cd <BINUTILS-OBJDIR>
211 % <BINUTILS-SRCDIR>/configure --target=<TARGET> --prefix=<PREFIX>\
212 --disable-nls
213 % make
214 % make install
215
216(6) GCC-CORE のインストール
217
218・NELIB をインストールする場合
219NEWLIB のインストールには GCC-CORE が必
220要なため,GCC-CORE のインストー
221ルをå…
222ˆã«è¡Œã†ï¼Žconfigure は,newlib のヘッダーファイルを <PREFIX> 以下
223にインストールするため,<PREFIX> 以下に書き込み権限のあるユーザーで行
224う必
225要がある.GCC-CORE のインストール手順は次の通り.
226
227 % mkdir <GCC-OBJDIR>
228 % cd <GCC-OBJDIR>
229 % <GCC-SRCDIR>/configure \
230 --target=<TARGET> --prefix=<PREFIX> \
231 --with-gnu-as --with-gnu-ld --with-newlib \
232 --with-headers=<NEWLIB-SRCDIR>/newlib/libc/include
233 % make
234 % make install
235
236・NEWLIB をインストールしない場合.
237NEWLIB をインストールしない場合,ソースファイルの修正が必
238要となる.修
239正個所は,
240 <GCC-SRCDIR>/gcc/libgcc2.c の 41,42行目の
241 #include <stdlib.h>
242 #include <unistd.h>
243 の二行をコメントアウトする.
244
245 <GCC-SRCDIR>/gcc/frame.c の 42,43行目の
246 #include <stdlib.h>
247 #include <unistd.h>
248 の二行をコメントアウトする.
249
250修正後の GCC-CORE のインストール手順は次の通り.
251
252 % mkdir <GCC-OBJDIR>
253 % cd <GCC-OBJDIR>
254 % <GCC-SRCDIR>/configure \
255 --target=<TARGET> --prefix=<PREFIX> \
256 --with-gnu-as --with-gnu-ld
257 % make
258 % make install
259
260(7) GDB のインストール
261
262次の手順に従って,GDB をインストールする.
263
264 % mkdir <GDB-OBJDIR>
265 % cd <GDB-OBJDIR>
266 % <GDB-SRCDIR>/configure --target=<TARGET> --prefix=<PREFIX>
267 % make
268 % make install
269
270(8) NEWLIB のインストール
271
272次の手順に従って,NEWLIB をインストールする.
273
274 % mkdir <NEWLIB-OBJDIR>
275 % cd <NEWLIB-OBJDIR>
276 % <NEWLIB-SRCDIR>/configure --target=<TARGET> --prefix=<PREFIX>
277 % make
278 % make install
279
280
281
2822.ターゲットへのダウンロードと実行
283
284ユーザズマニュアルの手順にしたがって,JSPカーネルおよびアプリケーショ
285ンプログラムが構築できると,ターゲットシステムへダウンロードして実行す
286る.ダウンロードと実行の方法には,ROMモニタを用いる方法と,gdb+スタブ
287を用いる方法がある.
288
289(A) ROMモニタを用いる方法
290
291ターゲットシステムが ROMモニタを持っている場合には,バイナリ形式または
292モトローラ S形式のファイルを,ROMモニタのダウンロードコマンドを使って
293ダウンロードし,実行コマンドを使ってダウンロードした番地から実行すれば
294よい.
295
296(B) スタブを用いる方法
297
298JSPカーネルと一緒に使えるように改造したスタブのソースコードは,JSPカー
299ネルのウェブサイトからダウンロードすることができる.スタブをダウンロー
300ドしたら,READMEファイルに従ってスタブを構築し,ROM またはフラッシュメ
301モリに書き込む.
302
303gdb+スタブを用いてプログラムをダウンロード・実行する手順は次の通り.
304
305 % <TARGET>-gdb jsp
306 GNU gdb 4.18
307 Copyright 1998 Free Software Foundation, Inc.
308 .......... 以下メッセージが続く ..........
309 (gdb)
310
311gdb が起動したら,次のコマンドを実行して,ターゲットシステムと接続する.
312
313 (gdb) set remotebaud <BPS>
314 (gdb) target remote /dev/ttyXX
315
316<BPS>,/dev/ttyXX には,それぞれ,ターゲットシステムを接続しているシリ
317アルポートのボーレートと,デバイス名を指定する.次に,load コマンドに
318より,プログラムをダウンロードする.
319
320 (gdb) load
321
322プログラムの実行は,continue コマンドで行う.
323
324 (gdb) continue
325
326ターゲットシステムによっては,プログラムの実行中にコントロール-C をå…
327¥
328力する,または NMI をかけることで,プログラムを停止させて gdb に制御が
329戻すことができる.ただし,割込み禁止状æ…
330‹ã§ã¯ï¼Œã‚³ãƒ³ãƒˆãƒ­ãƒ¼ãƒ«-C で停止さ
331せることはできない.詳しくは,スタブの READMEファイルまたはターゲット
332毎のマニュアルを参ç…
333§ã™ã‚‹ã“と.
334
335
336
3373.Cygwinのインストール
338
339本インストールマニュアルは,cygwinの1.5.5バージョンを対象にしている.
340また,以下のサイトではCygwinに関する情
341報やドキュメントがまとめられている.
342http://www.sixnine.net/cygwin/cygwin-doc/
343
3443.1必
345要なファイル
346Cygwinのインストールに必
347要なファイルは次のサイトからå…
348¥æ‰‹ã™ã‚‹ã“とができる.
349
350 Red Hat http://www.cygwin.com/
351 または ftp://sources.redhat.com/pub/cygwin/
352 Ring Server http://www.ring.gr.jp/
353
354上記のサイトから最新版の setup.exe をダウンロードする.
355
3563.2インストール
357setup.exe を実行すると,
358
359・インターネットからダウンロードする
360・インターネットからインストールする
361・ローカルディレクトリからインストールする
362
363該当するインストール手法にチェックし次に進む.何台かのマシンにインストー
364ルするなら,1台目はインターネットからインストールイメージをダウンロー
365ドし,後のマシンにはそれらのファイルをコピーしてローカルディレクトリか
366らインストールすればよい.
367
368以下,インターネットからダウンロードする場合について説明する.ダウンロー
369ドを選択すると必
370要ならば proxy の設定の後,ミラーサイトの一覧が示され
371るので,近くのサイトを選択する.
372
373次に,パッケージ一覧が示されるため,必
374要なパッケージを選択する.特に回
375線等の問題がないかぎりすべてのパッケージをインストールするのが望ましい.
376
377ダウンロードが終了したらもう一度 setup.exe を実行して,ローカルディレ
378クトリからのインストールを選択する.次にインストールå…
379ƒã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª
380(上でダウンロードしたファイルが存在するディレクトリ,デフォルトで選択
381されているはず)を選択する.次にインストールå…
382ˆã®é¸æŠžã«ç§»ã‚‹ãŒï¼Œç‰¹ã«ç†ç”±
383がない限りデフォルトの C:\Cygwin にインストールする.次にインストール
384するパッケージを選択する.å…
385ˆã»ã©ãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰ã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ãŒè¡¨ç¤ºã•ã‚Œï¼Œ
386ディフォルトではå…
387¨ã¦ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•ã‚Œã‚‹ã“とになっているため,単に next
388を押してインストールを開始する.
389
390
3913.3.開発環境のインストール
392
3933.3.1 バイナリからのインストール
394
395特に最新版のコンパイラが必
396要でなければ,TOPPERS/JSP のホームページ
397(http://www.toppers.jp/)から SH 用の BINUTILS,GCC-CORE,GDB のバイナ
398リ(gnu_cygwin_sh.tar.gz)をc:\Cygwin\usr\localにダウンロードして以下
399の手順で展開する.なお,このファイルにはNEWLIBは含まれていないが,
400GDB-Stub,TOPPERS/JSP の sample1 のコンパイルには支障はない.ユーザー
401アプリケーションを作成するさい,必
402要なら別途ソースからコンパイル,イン
403ストールする.バイナリ(gnu_cygwin_sh.tar.gz)は,Cygwin の /usr/local
404で展開する.
405
406 $ cd /usr/local
407 $ tar xvfz gnu_cygwin_sh.tar.gz
408
409これで/usr/local/sh以下に開発ツールがインストールされる.次に
410/usr/local/sh/bin にパスを通す.å…
411·ä½“的にはホーム(cygwin実行時のカレン
412トディレクトリ)にbashの設定ファイル".bashrc"を作成して次の一行を追加す
413る.
414
415export PATH=/usr/local/sh/bin:${PATH}
416
417後は,JSPの各ターゲットのMakefileå…
418ˆé ­ã«ã‚ã‚‹"CYGWIN = ture"の部分のコメ
419ントアウトを外せばCygwin上でJSPのコンパイルが可能である.
420
421
4223.4.gdbによるデバッグ
423GDBのコマンドラインからCOM1経由でターゲットに接続する場合は,
424
425(gdb)target remote /dev/ttyS0
426
427COM2経由の場合は
428
429(gdb)target remote /dev/ttyS1
430
431とする.
432
433
434以上
Note: See TracBrowser for help on using the repository browser.