ソースの表示以前のリビジョンバックリンク全て展開する/折り畳む文書の先頭へ Share via Share via... Twitter LinkedIn Facebook Pinterest Telegram WhatsApp Yammer Reddit Teams最近の変更Send via e-Mail印刷パーマリンク × « Teaboard:クロスコンパイラのビルド 風邪ひいてた » Teaboard:Hello, world 開発環境の構築も完了したところで、いよいよ「Hello, world」だ。 まずは作業用SDカード領域の確保。 ROMディスクから起動していることの確認[/SYS]% df PATH DEV TOTAL FREE USED UNIT MAXFILE NAME /SYS rda 1829 0 100% 1024 256 PM:TBMX1 パーティションの確保 [/SYS]% hdpart pcb pcb [C:483 H:64 S:63 B:1953792 (954 MB)] No System Boot StartCHS EndCHS SecNo SecCnt Size 1 13 ------ 00 0: 0: 0 0: 0: 0 0 0 0 KB 2 00 ------ 00 0: 0: 0 0: 0: 0 0 0 0 KB 3 00 ------ 00 0: 0: 0 0: 0: 0 0 0 0 KB 4 00 ------ 00 0: 0: 0 0: 0: 0 0 0 0 KB ** Create/Delete/Boot/Edit/Quit ? c Create PartNo (1-4) ? 1 Size [GB/MB/KB,All] (<201MB) ? 200M No System Boot StartCHS EndCHS SecNo SecCnt Size 1 13 BTRON 00 0: 2: 4 101: 63:63 129 411135 200 MB 2 00 ------ 00 0: 0: 0 0: 0: 0 0 0 0 KB 3 00 ------ 00 0: 0: 0 0: 0: 0 0 0 0 KB 4 00 ------ 00 0: 0: 0 0: 0: 0 0 0 0 KB ** Create/Delete/Boot/Edit/Update/Quit ? b Boot PartNo (1-4,Clear) ? 1 No System Boot StartCHS EndCHS SecNo SecCnt Size 1 13 BTRON 80 0: 2: 4 101: 63:63 129 411135 200 MB 2 00 ------ 00 0: 0: 0 0: 0: 0 0 0 0 KB 3 00 ------ 00 0: 0: 0 0: 0: 0 0 0 0 KB 4 00 ------ 00 0: 0: 0 0: 0: 0 0 0 0 KB ** Create/Delete/Boot/Edit/Update/Quit ? u ** pcb: Updated Master Boot Block パーティションのフォーマット [/SYS]% format -b pcb0 WORK Format pcb0 [STD] WORK Logical Formatting... Writing BootCode... Disk Format Success. </coee> * **パーティションのマウント**<code bash> [/SYS]% att pcb0 pcb0 pcb0 -> pcb0 システムファイルのコピー [/SYS]% cp -b -v -r * /pcb0 copied: SBOOT copied: KERNEL.SYS copied: SYSCONF copied: DEVCONF copied: STARTUP.CMD copied: STARTUP.CLI copied: rsdrv copied: netdrv copied: unixemu copied: tcpipmgr copied: NETCONF copied: cli copied: .xcli copied: bin パーティションのアンマウント [/SYS]% det pcb0 再起動 [/SYS]% # bd SDカードからブートしているか確認 [/SYS]% df PATH DEV TOTAL FREE USED UNIT MAXFILE NAME /SYS pcb0 205564 203312 1% 4096 17408 WORK 上記通りにやったのにもかかわらず、内蔵ROMディスク(rda)から起動するようならば、一度Teaboardの電源を落として(USBケーブルを抜いて)から起動すると、SDカードから起動すると思う。 次は、Hello, worldのコンパイル。 Teaboardで走るプログラムは「プロセスベース」と「T-Kernelベース」の2つに大別される。基本的にプログラムは、それぞれのベースに合わせたlocal/te/bapplとlocal/te/kappl以下で開発を行う。今回はプロセスベースのHello, worldを作成する。 ディレクトリ構成/opt/local/te/bappl /hello /src /tbmx1 hello/srcにソースファイルを格納し、バイナリはhello/tbmx1に格納する。デフォルトのmakerulesでは、バイナリ格納用のディレクトリ名によって、ターゲットを自動的に切り替えるようになっいるっぽい。なので、基本的にはこのディレクトリ構成は変更しない方がいいと思われる。 hello.cの作成 hello/srcにhello.cを作る。 #include <stdio.h> int main(void) { printf("Hello, world¥n"); return 0; } Makefileの作成 これもhello/srcに作る。 include ../../etc/makerules VPATH = ../src hello: hello.o make make Comments Name E-Mail Website 人間の証明として、ボックス内の全ての文字を入力してください。 この項目は空のままにして下さい:Preview Comment blog/2007/2007-01-30.txt 最終更新: 2015-01-06 11:51(外部編集)