オフライン コンパイル
.
オフライン コンパイル
このページは http://mbed.org/handbook/Exporting-to-offline-toolchains を要約したものです |
mbedはクラウド開発環境のため、インターネット接続がないとプログラムをコンパイルすることができません。
しかし、エクスポート機能を使用すれば各種のARM向けコンパイラを使い、ローカルのPC上でコンパイルすることができます。
エクスポート用ライブラリを選ぶ
オンラインコンパイラを開き、目的のプロジェクトに含まれている標準の「mbed」ライブラリを削除します。
次に、オフラインツールチェインライブラリをプロジェクトへインポートします。
[Repository '/users/mbed_official/code/mbed-export/' not found]
プロジェクトの名前で右クリックし、メニューから「Export Program...」をクリックします。
コンパイラの種類とCPUの種類を選択します。
zipファイルがダウンロードされます。
- Exporting to uVision - Keil
- Exporting to Code Red - LPCXPresso
- Exporting to CodeSourcery - Sourcery G++
- Exporting to GCC ARM Embedded - GCC
MDK-ARM (uVision)
Keil MDK-ARM Lite と CMSIS-DAP を使う方法が紹介されています。
μVision4でデバッグ! by Toyomasa
CodeSourcery
コンパイラ
あらかじめ Sourcery G++ をセットアップしておいてください。
Sourcery G++ Lite for ARM EABI が無料で利用できます。(GUIなし)
arm-2010q1-188-arm-none-eabi.exe をインストールしておくだけでOKでした。
一歩進んで、CMSIS開発環境を構築する場合の参考: http://d.hatena.ne.jp/deb/20110822/
エクスポート時、コンパイラとして「GCC (Code Sourcery)」を選択してください。
ダウンロードされたzipファイルを適当なフォルダへ展開します。
コマンドプロンプト(Windowsの場合)を開き、展開したフォルダへ移動してmakeします。
Sourcery G++ には「cs-make」というmakeコマンドが含まれています。
コマンド
C:\...> cd my_program C:\...> dir /b main.cpp Makefile mbed-export C:\...> cs-make arm-none-eabi-g++ -c -Os -fno-common -fmessage-length=0 -Wall -fno-exceptions -mcpu=cortex-m3 -mthumb -ffunction-sections -fdata-sections -DTARGET_LPC1768 -DTOOLCHAIN_GCC_CS -DNDEBUG -std=gnu++98 -I./mbed -I./mbed/LPC1768 -I./mbed/LPC1768/GCC_CS -o main.o main.cpp arm-none-eabi-gcc -mcpu=cortex-m3 -mthumb -Wl,--gc-sections -Tmbed/LPC1768/GCC_CS/LPC1768.ld -L./mbed -L./mbed/LPC1768 -L./mbed/LPC1768/GCC_CS -o my_program.elf main.o mbed/LPC1768/GCC_CS/startup_LPC17xx.o mbed/LPC1768/GCC_CS/sys.o mbed/LPC1768/GCC_CS/cmsis_nvic.o mbed/LPC1768/GCC_CS/core_cm3.o mbed/LPC1768/GCC_CS/system_LPC17xx.o -lmbed -lcapi -lstdc++ -lsupc++ -lm -lc -lgcc -lmbed -lcapi -lstdc++ -lsupc++ -lm -lc -lgcc arm-none-eabi-objcopy -O binary my_program.elf my_program.bin C:\...> dir /b main.cpp main.o Makefile mbed-export my_program.bin my_program.elf
できあがった「.bin」ファイルをmbedへ書き込みます。
mbed以外のマイコンボードへ書き込むには、こちらの「Flash(ROM)書込み 」を参照。
Please log in to post comments.