なんとかなるさね

マイコンをネタにブログを始めてみました


Arduino IDE | Linux Arduino互換ライブラリをLinaro ARM Linux GCC 4.7でビルド→正常終了 

Intel Galileo Arduino IDEに同梱されているLinux Arduino互換ライブラリのソースコードをLinaro ARM
Linux GCC 4.7.3でビルド出来るか試してみました。結果、最後までビルド出来ました。

BuildLog.txt



書き換えたArduino IDEの環境設定ファイル: arduino-1.5.3\hardware\arduino\x86\platform.win.txt
環境設定ファイルの書き換え部分の内容(もう'X86'では無く'ARM'ですが文字列は未変更のままです):

# X86 compile variables
# ---------------------

name=Arduino X86 Boards
compiler.path=E:/tools/micom/Renesas/Linaro/gcc-linaro-arm-linux-gnueabihf-4.7-2013.04/bin/
compiler.c.cmd=arm-linux-gnueabihf-gcc
compiler.c.flags= -c -g -Os -w -ffunction-sections -fdata-sections -MMD
compiler.c.elf.flags=-Os -Wl,--gc-sections
compiler.c.elf.cmd=arm-linux-gnueabihf-g++
compiler.S.flags=-c -g -assembler-with-cpp
compiler.cpp.cmd=arm-linux-gnueabihf-g++
compiler.cpp.flags= -c -g -Os -w -fno-exceptions -ffunction-sections -fdata-sections -MMD
compiler.ar.cmd=arm-linux-gnueabihf-ar
compiler.ar.flags=rcs
compiler.objcopy.cmd=arm-linux-gnueabihf-objcopy
compiler.objcopy.eep.flags=-O ihex -j .eeprom --set-section-flags=.eeprom=alloc,load --no-change-warnings --change-section-lma .eeprom=0
compiler.elf2hex.flags=-O ihex -R .eeprom
compiler.elf2hex.cmd=arm-linux-gnueabihf-objcopy
compiler.ldflags=
compiler.size.cmd=arm-linux-gnueabihf-size
compiler.strip.cmd=arm-linux-gnueabihf-strip
# this can be overriden in boards.txt
build.extra_flags=

# X86 compile patterns
# --------------------

## Compile c files
recipe.c.o.pattern="{compiler.path}{compiler.c.cmd}" {compiler.c.flags} -D{software}={runtime.ide.version} {build.extra_flags} {includes} "{source_file}" -o "{object_file}"

## Compile c++ files
recipe.cpp.o.pattern="{compiler.path}{compiler.cpp.cmd}" {compiler.cpp.flags} -D{software}={runtime.ide.version} {build.extra_flags} {includes} "{source_file}" -o "{object_file}"

## Create archives
recipe.ar.pattern="{compiler.path}{compiler.ar.cmd}" {compiler.ar.flags} "{build.path}/{archive_file}" "{object_file}"

## Combine gc-sections, archives, and objects
recipe.c.combine.pattern="{compiler.path}{compiler.c.elf.cmd}" {compiler.c.elf.flags} -o "{build.path}/{build.project_name}.elf" {object_files} "{build.path}/{archive_file}" "-L{build.path}" -lm -lpthread

## Create eeprom
recipe.objcopy.eep.pattern="{compiler.path}{compiler.strip.cmd}" "{build.path}/{build.project_name}.elf"

## Create hex
recipe.objcopy.hex.pattern=

## Compute size
recipe.size.pattern="{compiler.path}{compiler.size.cmd}" -A "{build.path}/{build.project_name}.elf"
recipe.size.regex=Total\s+([0-9]+).*

関連記事

2014/01/18   blog-entry-407   category: Arduino Lib & CrossGCC

go page top