Ide Mbed OS导出项目不在System Workbench上生成

Ide Mbed OS导出项目不在System Workbench上生成,ide,stm32,mbed,Ide,Stm32,Mbed,我开始在MBED操作系统上开发。我想离线工作 我将示例blinky应用程序导出到System Workbench IDE。导出的项目未生成。 编译错误非常基本,缺少包含路径: arm-none-eabi-gcc -mcpu=cortex-m4 -mthumb -mfloat-abi=softfp -mfpu=fpv4-sp-d16 -std=c99 '-DDEVICE_CRC=1' '-DDEVICE_SPI=1' '-DDEVICE_I2C=1' '-D__MBED__=1' '-DDEVIC

我开始在MBED操作系统上开发。我想离线工作

我将示例blinky应用程序导出到System Workbench IDE。导出的项目未生成。 编译错误非常基本,缺少包含路径:

arm-none-eabi-gcc -mcpu=cortex-m4 -mthumb -mfloat-abi=softfp -mfpu=fpv4-sp-d16 -std=c99 '-DDEVICE_CRC=1' '-DDEVICE_SPI=1' '-DDEVICE_I2C=1' '-D__MBED__=1' '-DDEVICE_I2CSLAVE=1' '-D__FPU_PRESENT=1' '-DDEVICE_PORTOUT=1' -DUSBHOST_OTHER '-DDEVICE_PORTINOUT=1' -DTARGET_RTOS_M4_M7 '-DDEVICE_RTC=1' '-DDEVICE_SERIAL_ASYNCH=1' -D__CMSIS_RTOS '-DDEVICE_ANALOGOUT=1' -DTOOLCHAIN_GCC '-DDEVICE_I2C_ASYNCH=1' -DTARGET_STM32L476xG -DTARGET_CORTEX_M -DTARGET_LIKE_CORTEX_M4 -DTARGET_STM32L476RG -DTARGET_M4 -DTARGET_STM32L4 '-DDEVICE_SPI_ASYNCH=1' '-DDEVICE_LPTICKER=1' '-DDEVICE_PWMOUT=1' '-DDEVICE_INTERRUPTIN=1' -DTARGET_CORTEX -DTARGET_NUCLEO_L476RG '-DTRANSACTION_QUEUE_SIZE_SPI=2' -D__CORTEX_M4 '-DDEVICE_USTICKER=1' '-DDEVICE_STDIO_MESSAGES=1' -DTARGET_FF_MORPHO -DTARGET_FAMILY_STM32 -DTARGET_FF_ARDUINO '-DDEVICE_PORTIN=1' -DTARGET_RELEASE -DTWO_RAM_REGIONS -DTARGET_STM '-DDEVICE_SERIAL_FC=1' '-DMBED_BUILD_TIMESTAMP=1540971180.81' '-DDEVICE_TRNG=1' -DTARGET_LIKE_MBED -D__MBED_CMSIS_RTOS_CM '-DDEVICE_SLEEP=1' -DTOOLCHAIN_GCC_ARM '-DDEVICE_CAN=1' '-DDEVICE_SPISLAVE=1' '-DDEVICE_ANALOGIN=1' '-DDEVICE_SERIAL=1' '-DDEVICE_FLASH=1' -DARM_MATH_CM4 -DMBED_DEBUG '-DMBED_TRAP_ERRORS_ENABLED=1' -DMBED_DEBUG '-DMBED_TRAP_ERRORS_ENABLED=1' -DNDEBUG -DNDEBUG  -includeC:/mbed-os-example-blinky2_sw4stm32_nucleo_l476rg/mbed-os-example-blinky2/mbed_config.h -O2 -funsigned-char -fno-delete-null-pointer-checks -fomit-frame-pointer -fmessage-length=0 -fno-builtin -g3 -Wall -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -ffunction-sections -fdata-sections -c -MMD -MP -MF"mbed-os/features/storage/FEATURE_STORAGE/cfstore/source/configuration_store.d" -MT"mbed-os/features/storage/FEATURE_STORAGE/cfstore/source/configuration_store.o" -o "mbed-os/features/storage/FEATURE_STORAGE/cfstore/source/configuration_store.o" "../mbed-os/features/storage/FEATURE_STORAGE/cfstore/source/configuration_store.c" @"mbed-os/features/storage/FEATURE_STORAGE/cfstore/source/includes.args"
../mbed-os/features/storage/FEATURE_STORAGE/flash-journal/flash-journal-strategy-sequential/strategy.c:18:10: fatal error: flash-journal-strategy-sequential/flash_journal_crc.h: No such file or directory
我有两个问题:

看起来要么我遗漏了什么,要么导出功能的成熟度很低。你对此有何反馈

我试图在项目设置中添加include路径,但没有成功。我注意到gcc命令行似乎忽略了项目设置,而是使用include.args文件。唯一的问题是后一个文件不存在。我想它应该由System Workbench在生成Makefiles时生成

PS:IAR的导出项目构建良好

你对此有何反馈

我的反馈是,导出功能的成熟度取决于导出器。正如您所提到的,IAR导出器生成了正确的项目文件

我想它应该由System Workbench在生成Makefiles时生成

这也是我的印象。根据错误消息,arm none eabi gcc没有找不到includes.args文件,它正在查找的路径比调用它的位置高一级。这意味着arm none eabi gcc是在本身不包含源的目录中调用的。相反,Makefile可能被设置为从build目录中运行编译器。也许可以在构建目录中找到mbed os/features/storage/FEATURE\u storage/cfstore/source/includes.args

include路径中似乎缺少../mbed os/features/storage/FEATURE\u storage/flash journal/或mbed os/features/storage/FEATURE\u storage/flash journal/。将该路径添加到include路径可以解决当前的问题

下面是一些更一般的建议:

我想离线工作

你试过Mbed CLI吗

您何时从联机编译器运行导出? 我们一直在在线编译器中修复bug,您可能遇到了我们在同一时间修复的问题

从Mbed CLI导出通常更简单,而且贡献者如何测试其导出器,因此它可能工作得更好

你对此有何反馈

我的反馈是,导出功能的成熟度取决于导出器。正如您所提到的,IAR导出器生成了正确的项目文件

我想它应该由System Workbench在生成Makefiles时生成

这也是我的印象。根据错误消息,arm none eabi gcc没有找不到includes.args文件,它正在查找的路径比调用它的位置高一级。这意味着arm none eabi gcc是在本身不包含源的目录中调用的。相反,Makefile可能被设置为从build目录中运行编译器。也许可以在构建目录中找到mbed os/features/storage/FEATURE\u storage/cfstore/source/includes.args

include路径中似乎缺少../mbed os/features/storage/FEATURE\u storage/flash journal/或mbed os/features/storage/FEATURE\u storage/flash journal/。将该路径添加到include路径可以解决当前的问题

下面是一些更一般的建议:

我想离线工作

你试过Mbed CLI吗

您何时从联机编译器运行导出? 我们一直在在线编译器中修复bug,您可能遇到了我们在同一时间修复的问题


从Mbed CLI导出通常更简单,而且参与者如何测试其导出器,因此它可能工作得更好。

谢谢您,很抱歉耽搁了您的时间。为了回答你的问题,我上周试用了在线编译器。我没有尝试MBed CLI,因为我想要一个全功能IDE。也许您可以在全功能IDE中使用MBed CLI作为构建命令。例如,我认为os.mbed.com有关于设置Eclipse的说明。通常,您会将build命令从make更改为mbed compile…谢谢您,很抱歉延迟了。为了回答你的问题,我上周试用了在线编译器。我没有尝试MBed CLI,因为我想要一个全功能IDE。也许您可以在全功能IDE中使用MBed CLI作为构建命令。例如,我认为os.mbed.com有关于设置Eclipse的说明。通常,您会将build命令从make更改为mbed compile。。。。