前回に続き、MbedプログラムをVisual Studioでビルド(コンパイル)を試してみました。
環境は以下のとおりです。
- Windows 10 64bit 1709
- Visual Studio 2017 15.5.3
- NUCLEO-F401RE
ビルド
試すといっても、Makefileを右クリックしてBuildするだけ...と思いきや、右クリックしてもBuild(やClean)が表示されていません。
Visual Studioのバージョンを上げたり、15.6 Preview 2を入れたりしても、状況変わらず。
試行錯誤した結果、英語表示に切り替えるとBuild/Cleanがでてくることが分かりました。(お、おぅ...)
本件、マイクロソフトへFeedbackしましたので、改善されるでしょう。
気分一新、Makefileを右クリックしてBuildを選ぶと、make.exeが起動しないエラーが。
'C:\mbed\Nucleo_blink_led_gcc_arm_nucleo_f401re\Nucleo_blink_led\Makefile' (Build) Process 'make.exe' failed to start. 指定されたファイルが見つかりません。 at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo) at System.Diagnostics.Process.Start() at Microsoft.VisualStudio.VC.Workspace.MakefileTaskAction.<RunAsync>d__19.MoveNext() Printing diag info: ActionType = Build filepath = C:\mbed\Nucleo_blink_led_gcc_arm_nucleo_f401re\Nucleo_blink_led\Makefile pwd = C:\mbed\Nucleo_blink_led_gcc_arm_nucleo_f401re\Nucleo_blink_led path = C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Linux\gcc_arm\arm-none-eabi\bin;C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Linux\gcc_arm\bin;C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Linux\GNU MCU Eclipse\Build Tools\2.9-20170629-1013\bin\bin makename = make.exe makepath = C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Linux\GNU MCU Eclipse\Build Tools\2.9-20170629-1013\bin makearg = BuildConfiguration = gccarm
わたしのPCでは、C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional に Linux というフォルダーが無いので何かインストールが不足しているんじゃないかと、Visual Studio インストーラーを見たところ、それっぽい項目が増えている?ではありませんか!
C++によるLinux開発 にある、Embedded開発とIoT開発 をチェックして、追加インストールすると、Buildが正常に実行されるようになりました。
gccは6.3.1でした。
C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Linux\gcc_arm\bin>arm-none-eabi-gcc --version arm-none-eabi-gcc (GNU Tools for ARM Embedded Processors 6-2017-q2-update) 6.3.1 20170620 (release) [ARM/embedded-6-branch revision 249437]