Cygwinのバージョン1.7.17およびGNU Make 3.81を使用しています。エラーメッセージには、ハードウェアFPとソフトウェアFPの不一致が原因のようです。拡張ファームウェアの作成方法を教示してください。
NXTOSEKの拡張ファーム作成方法を教えて下さい
NXTOSEKのhelloworldがコンパイルできません。
下記サイトの手順どおりにやっていますが、コンパイルエラーになります。
http://lejos-osek.sourceforge.net/jp/installation_enf.htm
Cygwinのバージョン 1.7.17
GNU Make 3.81
エラー内容
$ make all
Compiling ../../ecrobot/../toppers_osek/kernel/alarm.c to alarm.o
Compiling ../../ecrobot/../toppers_osek/kernel/event.c to event.o
Compiling ../../ecrobot/../toppers_osek/kernel/interrupt.c to interrupt.o
…
Assembling ../../ecrobot/../toppers_osek/config/at91sam7s-gnu/irq.s to irq.oram
/cygdrive/C/cygwin/GNUARM/bin/../lib/gcc/arm-elf/4.0.2/../../../../arm-elf/bin/l
d: ERROR: build/nxtvm/platform/nxt/vectors.o uses hardware FP, whereas helloworl
d_OSEK_rom.elf uses software FP
/cygdrive/C/cygwin/GNUARM/bin/../lib/gcc/arm-elf/4.0.2/../../../../arm-elf/bin/l
d: failed to merge target specific data of file build/nxtvm/platform/nxt/vectors
.o
/cygdrive/C/cygwin/GNUARM/bin/../lib/gcc/arm-elf/4.0.2/../../../../arm-elf/bin/l
d: ERROR: build/nxt_binary_header.o uses hardware FP, whereas helloworld_OSEK_ro
m.elf uses software FP
/cygdrive/C/cygwin/GNUARM/bin/../lib/gcc/arm-elf/4.0.2/../../../../arm-elf/bin/l
d: failed to merge target specific data of file build/nxt_binary_header.o
/cygdrive/C/cygwin/GNUARM/bin/../lib/gcc/arm-elf/4.0.2/../../../../arm-elf/bin/l
d: ERROR: build/nxt_entry_point.o uses hardware FP, whereas helloworld_OSEK_rom.
elf uses software FP
/cygdrive/C/cygwin/GNUARM/bin/../lib/gcc/arm-elf/4.0.2/../../../../arm-elf/bin/l
d: failed to merge target specific data of file build/nxt_entry_point.o
/cygdrive/C/cygwin/GNUARM/bin/../lib/gcc/arm-elf/4.0.2/../../../../arm-elf/bin/l
d: ERROR: build/ecrobot_init.o uses hardware FP, whereas helloworld_OSEK_rom.elf
uses software FP
/cygdrive/C/cygwin/GNUARM/bin/../lib/gcc/arm-elf/4.0.2/../../../../arm-elf/bin/l
d: failed to merge target specific data of file build/ecrobot_init.o
/cygdrive/C/cygwin/GNUARM/bin/../lib/gcc/arm-elf/4.0.2/../../../../arm-elf/bin/l
d: ERROR: ../../ecrobot/../ecrobot/libecrobot.a(ecrobot_device_hook.o) uses hard
ware FP, whereas helloworld_OSEK_rom.elf uses software FP
/cygdrive/C/cygwin/GNUARM/bin/../lib/gcc/arm-elf/4.0.2/../../../../arm-elf/bin/l
d: failed to merge target specific data of file ../../ecrobot/../ecrobot/libecro
bot.a(ecrobot_device_hook.o)
/cygdrive/C/cygwin/GNUARM/bin/../lib/gcc/arm-elf/4.0.2/../../../../arm-elf/bin/l
d: ERROR: ../../ecrobot/../ecrobot/libecrobot.a(ecrobot_interface.o) uses hardwa
re FP, whereas
…
/cygdrive/C/cygwin/GNUARM/bin/../lib/gcc/arm-elf/4.0.2/../../../../arm-elf/bin/l
d: failed to merge target specific data of file build/nxtvm/platform/nxt/vectors
.o
collect2: ld returned 1 exit status
make: *** [helloworld_OSEK_rom.elf] エラー 1
エラーにならず、拡張ファームウェア作成方法のご教示宜しくお願いします。
お礼
ありがとうございました。 無事コンパイルができました。 別のサイトからインストールしてたのですが、ファイル名が同じでも違うものだったみたいです…