なんとかなるさね

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


スポンサーサイト 

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

--/--/--   blog-entry-   category: スポンサー広告

go page top

Arduino IDE|GadgetRenesas基板用IDE4GR 1.6.5(のようなもの)を作るには? (1) 

Arduino IDE 1.6.5/1.6.7ではボード情報定義ファイルの1つであるplatform.txtで以下の表記が使われています。
いつものようにちょっと好奇心から、GadgetRenesas基板用IDE4GR 1.6.5/1.6.7(のようなもの)を作ってみる
ことを考え始めたのですが、IDE4GR 0.6.1からファイルをコピーするだけでは使えるようになりませんでした。

compiler.path={runtime.tools.avr-gcc.path}/bin/
tools.avrdude.path={runtime.tools.avrdude.path}

そこで試行錯誤してみたところ、以下のような記述のファイルを追加しなければならないことに気付きました。
(追記 : Arduino IDE 1.6.5では出来たのですが、Arduino IDE 1.6.7で試してみたところ出来ませんでした。)
(追記その2 : ちょっとやっつけ作業なのですが、Arduino IDE 1.6.7でも出来るようにする手がありました。)

(1) ビルトインツールバージョン記述ファイルその1

ファイル: arduino-1.6.5-r5\hardware\tools\gcc-rl78\builtin_tools_versions.txt
内容:

GadgetRenesas.gcc-rl78=v14.03



(2) ビルトインツールバージョン記述ファイルその2

ファイル: arduino-1.6.5-r5\hardware\tools\rl78\builtin_tools_versions.txt
内容:

GadgetRenesas.rl78=20140111



(3) パッケージ情報記述ファイル

ファイル: ユーザプロファイルフォルダ\AppData\Roaming\Arduino15\package_GadgetRenesas_index.json
内容: 最低限以下の内容が必要(悩ましいのは、このファイルをどうやってここに置くか、良い手が無いこと)

{
  "packages": [
    {
      "name": "GadgetRenesas",
      "platforms": [
        {
          "name": "GadgetRenesas RL78 Boards",
          "architecture": "rl78",
          "version": "0.1.0",
          "boards": [
            {
              "name": "GR-KURUMI"
            }
          ],
          "toolsDependencies": [
            {
              "packager": "GadgetRenesas",
              "name": "rl78",
              "version": "20140111"
            },
            {
              "packager": "GadgetRenesas",
              "name": "gcc-rl78",
              "version": "v14.03"
            }
          ]
        }
      ],
      "tools": [
        {
          "name": "gcc-rl78",
          "version": "v14.03",
          "systems": [
            {
              "host": "i686-mingw32"
            }
          ]
        },
        {
          "name": "rl78",
          "version": "20140111",
          "systems": [
            {
              "host": "i686-mingw32"
            }
          ]
        }
      ]
    }
  ]
}



このようにしておけば、Arduino IDEに最初から組み込んでおいたGadgetRenesas基板用ボードパッケージの
platform.txtでも以下のような表記が使えるようになるようです。

compiler.path={runtime.tools.gcc-rl78.path}/rl78-elf/bin/
tools.rl78flash.path={runtime.tools.rl78.path}

追記 : メモ

Arduino IDEに最初から組み込まれているAVR用ボードパッケージでは起動時に以下のフォルダのファイルを
ユーザプロファイルフォルダ\AppData\Roaming\Arduino15\へコピーしているようなのですが、同じことを
GadgetRenesas基板用ボードパッケージに対して行わせることが出来ません、、、(package_index.json.sig
付きのpackage_index.jsonに対してしか行われないのかも、、、) 何か手を考えたいところです、、、



追記 : 補足

Arduino IDE 1.6.7で試してみたところ出来ませんでした。多分、Arduino IDEからビルド処理を担当している
arduino-builder.exeというプログラムへ渡される引数の以下の赤字の箇所を小細工しないと駄目そうです、、、

E:\tools\micom\Arduino\arduino-1.6.7\arduino-builder -dump-prefs -logger=machine -hardware "E:\tools\micom\Arduino\arduino-1.6.7\hardware" -hardware "C:\Users\UserName\AppData\Local\Arduino15\packages" -hardware "E:\tools\micom\Arduino\sketchbook2\hardware" -tools "E:\tools\micom\Arduino\arduino-1.6.7\tools-builder" -tools "E:\tools\micom\Arduino\arduino-1.6.7\hardware\tools\avr" -tools "C:\Users\UserName\AppData\Local\Arduino15\packages" -built-in-libraries "E:\tools\micom\Arduino\arduino-1.6.7\libraries" -libraries "E:\tools\micom\Arduino\sketchbook2\libraries" -fqbn=GadgetRenesas:rl78:kurumi -ide-version=10607 -build-path "W:\Temp\UserName\build2a78e03239f0af689a713f52cad42909.tmp" -warnings=default -prefs=build.warn_data_percentage=75 -verbose "E:\tools\micom\Arduino\arduino-1.6.7\examples\01.Basics\Blink\Blink.ino"
E:\tools\micom\Arduino\arduino-1.6.7\arduino-builder -compile -logger=machine -hardware "E:\tools\micom\Arduino\arduino-1.6.7\hardware" -hardware "C:\Users\UserName\AppData\Local\Arduino15\packages" -hardware "E:\tools\micom\Arduino\sketchbook2\hardware" -tools "E:\tools\micom\Arduino\arduino-1.6.7\tools-builder" -tools "E:\tools\micom\Arduino\arduino-1.6.7\hardware\tools\avr" -tools "C:\Users\UserName\AppData\Local\Arduino15\packages" -built-in-libraries "E:\tools\micom\Arduino\arduino-1.6.7\libraries" -libraries "E:\tools\micom\Arduino\sketchbook2\libraries" -fqbn=GadgetRenesas:rl78:kurumi -ide-version=10607 -build-path "W:\Temp\UserName\build2a78e03239f0af689a713f52cad42909.tmp" -warnings=default -prefs=build.warn_data_percentage=75 -verbose "E:\tools\micom\Arduino\arduino-1.6.7\examples\01.Basics\Blink\Blink.ino"
Board GadgetRenesas:rx64m:sakura doesn't define a 'build.board' preference. Auto-set to: RX64M_SAKURA
"/rl78-elf/bin/rl78-elf-gcc" -Os -w -fno-function-cse -funit-at-a-time -falign-jumps -fdata-sections -ffunction-sections -fno-cprop-registers -fsigned-char -g2 -g -DREL_GR_KURUMI -DARDUINO=100 -DWORKAROUND_READ_MODIFY_WRITE -w -x c++ -E -CC -DF_CPU=32000000L -DARDUINO=10607 -DARDUINO_RL78_KURUMI -DARDUINO_ARCH_RL78 "-IE:\tools\micom\Arduino\arduino-1.6.7\hardware\GadgetRenesas\rl78\cores\arduino" "-IE:\tools\micom\Arduino\arduino-1.6.7\hardware\GadgetRenesas\rl78\variants\gr_kurumi" "W:\Temp\UserName\build2a78e03239f0af689a713f52cad42909.tmp\sketch\Blink.ino.cpp" -o "nul"
"/rl78-elf/bin/rl78-elf-gcc" -Os -w -fno-function-cse -funit-at-a-time -falign-jumps -fdata-sections -ffunction-sections -fno-cprop-registers -fsigned-char -g2 -g -DREL_GR_KURUMI -DARDUINO=100 -DWORKAROUND_READ_MODIFY_WRITE -w -x c++ -E -CC -DF_CPU=32000000L -DARDUINO=10607 -DARDUINO_RL78_KURUMI -DARDUINO_ARCH_RL78 "-IE:\tools\micom\Arduino\arduino-1.6.7\hardware\GadgetRenesas\rl78\cores\arduino" "-IE:\tools\micom\Arduino\arduino-1.6.7\hardware\GadgetRenesas\rl78\variants\gr_kurumi" "W:\Temp\UserName\build2a78e03239f0af689a713f52cad42909.tmp\sketch\Blink.ino.cpp" -o "nul"
"/rl78-elf/bin/rl78-elf-gcc" -Os -w -fno-function-cse -funit-at-a-time -falign-jumps -fdata-sections -ffunction-sections -fno-cprop-registers -fsigned-char -g2 -g -DREL_GR_KURUMI -DARDUINO=100 -DWORKAROUND_READ_MODIFY_WRITE -w -x c++ -E -CC -DF_CPU=32000000L -DARDUINO=10607 -DARDUINO_RL78_KURUMI -DARDUINO_ARCH_RL78 "-IE:\tools\micom\Arduino\arduino-1.6.7\hardware\GadgetRenesas\rl78\cores\arduino" "-IE:\tools\micom\Arduino\arduino-1.6.7\hardware\GadgetRenesas\rl78\variants\gr_kurumi" "W:\Temp\UserName\build2a78e03239f0af689a713f52cad42909.tmp\sketch\Blink.ino.cpp" -o "W:\Temp\UserName\build2a78e03239f0af689a713f52cad42909.tmp\preproc\ctags_target_for_gcc_minus_e.cpp"
exec: "/rl78-elf/bin/rl78-elf-gcc": file does not exist
コンパイル時にエラーが発生しました。



追記 : 補足その2

Arduino IDE 1.6.7でもbuiltin_tools_versions.txtとフォルダ構成を以下のようにしてみたところ出来るように
なりました。(ちょっとやっつけ作業なのですが。) なお、フォルダ構成ですが、以下のバッチファイル(管理者
権限で実行)でシンボリックリンクを作成してあります。

ファイル: arduino-1.6.7\hardware\tools\avr\builtin_tools_versions.txt
変更内容: 赤字の箇所を追加

arduino.avrdude=6.0.1-arduino5
arduino.avr-gcc=4.8.1-arduino5
GadgetRenesas.gcc-rl78=v14.03

ファイル: arduino-1.6.7\hardware\tools\avr\MKLINKGRTOOLS.bat
内容:

CD /D "%~dp0"
MKLINK /D .\rl78-elf ..\gcc-rl78\rl78-elf
pause





関連記事

2016/02/04   blog-entry-733   category: Arduino Lib & CrossGCC

go page top

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。