buildができません(ノД`、)
さてdevkitProのインストールも済んだし、中に入っているサンプルコードを実行してみるかなと思って適当なサンプルのMakefileをおもむろに実行してみる。
・・・・・makeできません(ノД`、)
C:\devkitPro\examples\nds\input>make ./Makefile
make: Nothing to be done for `Makefile'.
それどころかコンパイルが始まる気配すら感じられません(ノД`、)
もうだめなんじゃーやっぱり俺には無理だったんじゃー(ノД`、)と思いつつ、とりあえずGoogle様に頼ってみる。
それっぽいHPを見つけた!
そこにはbuild用のバッチファイルの書き方が載っていたよ(ノД`、)ありがとうありがとう
そのHPによると、
- ソースはARM7用とARM9用が別々に必要
- それぞれのCPU用にmain関数が存在する(!)
- もちろん両方同時に走る
どうやら1本の実行ファイルを作成するのに2つのmain関数が必要なもよう。
2つのプログラムが同時に走るので同時に同じリソースへリクエストをかけないように注意が必要らしい。VSyncで処理していたりすると同じようなタイミングで処理しようとしてしまうのかな?
まあ注意事項は後々ということで。で、肝心のバッチファイルは以下のとおり
[arm9.bat](arm9.cコンパイル用)
C:\devkitPro\devkitARM\bin\arm-eabi-g++ -g -Wall -O2 -mcpu=arm9tdmi -mtune=arm9tdmi -fomit-frame-pointer -ffast-math -IC:\devkitPro\libnds\include -DARM9 -fno-rtti -fno-exceptions -c arm9.c -oarm9.o
C:\devkitPro\devkitARM\bin\arm-eabi-g++ -g -mthumb -mthumb-interwork -mno-fpu -specs=ds_arm9.specs arm9.o -LC:\devkitPro\libnds\lib -lnds9 -o arm9.elf
C:\devkitPro\devkitARM\bin\arm-eabi-objcopy -O binary arm9.elf arm9.bin
pause
[arm7.bat](arm7.cコンパイル用)
C:\devkitPro\devkitARM\bin\arm-eabi-g++ -g -Wall -O2 -mcpu=arm7tdmi -mtune=arm7tdmi -fomit-frame-pointer -ffast-math -fno-rtti -fno-exceptions -IC:\devkitPro\libnds\include -DARM7 -c arm7.c -oarm7.o
C:\devkitPro\devkitARM\bin\arm-eabi-g++ -g -mthumb-interwork -mno-fpu -specs=ds_arm7.specs arm7.o -LC:\devkitPro\libnds\lib -lnds7 -oarm7.elf
C:\devkitPro\devkitARM\bin\arm-eabi-objcopy -O binary arm7.elf arm7.bin
pause
[build.bat](上記2ファイルのリンク用)
です。
C:\devkitPro\devkitARM\bin\ndstool -c templete.nds -9 arm9.bin -7 arm7.bin
pause
arm7.cとかarm9.cはファイル名が固定になっているので引数でパラメータを指定するなりして対応すればいいみたい。
でもまあしばらくは必要ないし、このままで色々試してみるかなあ。