Hi to All,
I am trying to use latest Arduino_STM32 (https://github.com/rogerclarkmelbourne/Arduino_STM32) for STM32F1/4 (Maple / STM32F4Discovery boards) sketches development under latest Arduino IDE (ver. 1.6) and preferable by me Arduino Eclipse IDE with Arduino plugin V2 (http://www.baeyens.it/eclipse/index.html).
Following corresponding instructions I have succeeded to run sketches on Arduino Leonardo and Olimexino-STM32 (Maple compatible) boards under Arduino IDE 1.6. I have also succeeded to run sketches on Arduino Leonardo under Arduino Eclipse IDE but reach problems to compile the sketches for Maple rev. 3+ (for flash) under Arduino Eclipse IDE.
The problem is in Arduino_STM32 tree structure and Arduino plugin expectations. Plugin adds to the project arduino/core and arduino/variant source folders linked to ArduinoPlatformPath/cores/maple (resolved to …hardware/Arduino_STM32STM32F1XX/cores/maple) and ArduinoPinPath/maple (resolved to …hardware/Arduino_STM32STM32F1XX/variants/maple) respectively.
I manually add needed by the sketch LiquidCrystal library and it appears as Libraries/LiquidCrystal source folder linked to ArduinoHardwareLibPath/LiquidCrystal (resolved to …hardware/Arduino_STM32STM32F1XX/libraries/LiquidCrystal).
At compilation I get the following error:
“C:/Tools/Arduino/arduino-1.6.0/hardware/tools/gcc-arm-none-eabi-4.8.3-2014q1/bin/arm-none-eabi-g++” -c -g -Os -MMD -ffunction-sections -fdata-sections -nostdlib --param max-inline-insns-single=500 -fno-rtti -fno-exceptions -DBOARD_maple -DVECT_TAB_FLASH -DERROR_LED_PORT=GPIOA -DERROR_LED_PIN=5 -mcpu=cortex-m3 -DF_CPU=72000000L -DARDUINO=160 -DARDUINO_ -DARDUINO_ARCH_STM32F1XX -DMCU_STM32F103RB -mthumb -DSTM32_MEDIUM_DENSITY -DBOOTLOADER_maple -march=armv7-m -D__STM32F1XX__ “-I/libmaple” “-I/libmaple/include” “-I/libmaple/stm32f1/include” “-I/libmaple/usb/stm32f1” “-I/libmaple/usb/usb_lib” -I"C:ToolsArduinoPrivatehardwareArduino_STM32STM32F1XXcoresmaple" -I"C:ToolsArduinoPrivatehardwareArduino_STM32STM32F1XXvariantsmaple" -I"C:ToolsArduinoPrivatehardwareArduino_STM32STM32F1XXlibrariesLiquidCrystal" -MMD -MP -MF".ino.cpp.d" -MT".ino.cpp.o" -D__IN_ECLIPSE__=1 -x c++ “…/.ino.cpp” -o “.ino.cpp.o” -Wall
In file included from C:ToolsArduinoPrivatehardwareArduino_STM32STM32F1XXcoresmaple/Arduino.h:30:0,
C:ToolsArduinoPrivatehardwareArduino_STM32STM32F1XXcoresmaple/wirish.h:50:28: fatal error: libmaple/stm32.h: No such file or directory
make: *** [.ino.cpp.o] Error 1
All staff (IDEs, Eclipse workspace, Arduino IDE Private staff etc.) is located into C:\Tools\Arduino folder. Using default (as for Arduino IDE 1.6) libraries/hardware location (C:\Users\BI\Documents\Arduino) takes to the same problem.
Trying to add missing source folders and includes (too much and spaghetti like) do not lead me to the final success.
I found advise for uniting the libmaple folder structure to the more flat maple-ide structure in http://forums.leaflabs.com/topic.php?id=15663 but it is probably outdated because no problems to compile the same sketch in Arduino IDE 1.6 for Maple so probably the problem is in Arduino Eclipse plugin.
Can somebody help me to solve the problem?
BTW I have succeeded to run project with libmaple-F4 (GitHub - bubulindo/libmaple_F4: libmaple with changes for the F4 discovery board) on STM32F4Discovery board using standard Eclipse IDE for C/C++. It has support for all STM32 boards I have an interest but I do not find information about its compatibility with Arduino IDE 1.6 and Arduino Eclipse IDE and how to integrate it. It is acceptable alternative especially if both libraries are comparable as functionality and reliability.