Building 3.5(.2) and CoreTypes.h not found
-
For the default selection of "SAME70_RTOS" I am getting an error message
09:58:25 **** Build of configuration SAME70_RTOS for project CANlib-3.5-dev **** make all Building file: ../src/CanMessageBuffer.cpp Invoking: Cross G++ Compiler arm-none-eabi-g++ -std=gnu++17 -D__SAME70Q20B__ -DRTOS -O2 -Wall -c -mcpu=cortex-m7 -mthumb -fno-math-errno -mfpu=fpv5-d16 -mfloat-abi=hard -mfp16-format=ieee -mno-unaligned-access -ffunction-sections -fdata-sections -fno-threadsafe-statics -fno-rtti -fno-exceptions -nostdlib -Wundef -Wdouble-promotion -Werror=return-type -fsingle-precision-constant "-Wa,-ahl=CanMessageBuffer.s" -MMD -MP -MF"src/CanMessageBuffer.d" -MT"src/CanMessageBuffer.o" -o "src/CanMessageBuffer.o" "../src/CanMessageBuffer.cpp" In file included from ../src/CanMessageBuffer.h:15, from ../src/CanMessageBuffer.cpp:8: ../src/CanId.h:12:10: fatal error: CoreTypes.h: No such file or directory 12 | #include <CoreTypes.h> // for CanAddress | ^~~~~~~~~~~~~ compilation terminated. make: *** [src/CanMessageBuffer.o] Error 1 "make all" terminated with exit code 2. Build might be incomplete. 09:58:26 Build Failed. 2 errors, 0 warnings. (took 141ms)
I am building for a Duet2 system so I don't know if I even need CANlib.
How do I fix the error?
Thanks!Gene
-
@GeneRisi If you want to build for Duet 2 then you need to build the Duet 2 configuration (
Duet2
). Did you follow these instructions for 3.5? https://github.com/Duet3D/RepRapFirmware/wiki/Building-RepRapFirmware -
@chrishamm I still get the missing include file error even when using SAME4E_RTOS for the CANlib build (which I guess makes sense). Do you know where the include file should be located?
Gere
11:04:37 **** Incremental Build of configuration SAM4E_RTOS for project CANlib-3.5-dev **** make all Building file: ../src/CanMessageBuffer.cpp Invoking: Cross G++ Compiler arm-none-eabi-g++ -std=gnu++17 -D__SAM4E8E__ -DRTOS -Os -Wall -c -mcpu=cortex-m4 -mthumb -fno-math-errno -mfpu=fpv4-sp-d16 -mfloat-abi=hard -mfp16-format=ieee -ffunction-sections -fdata-sections -fno-threadsafe-statics -fno-rtti -fno-exceptions -nostdlib -Wundef -Wdouble-promotion -Werror=return-type -fsingle-precision-constant "-Wa,-ahl=CanMessageBuffer.s" -MMD -MP -MF"src/CanMessageBuffer.d" -MT"src/CanMessageBuffer.o" -o "src/CanMessageBuffer.o" "../src/CanMessageBuffer.cpp" In file included from ../src/CanMessageBuffer.h:15, from ../src/CanMessageBuffer.cpp:8: ../src/CanId.h:12:10: fatal error: CoreTypes.h: No such file or directory 12 | #include <CoreTypes.h> // for CanAddress | ^~~~~~~~~~~~~ compilation terminated. make: *** [src/CanMessageBuffer.o] Error 1 "make all" terminated with exit code 2. Build might be incomplete. 11:04:37 Build Failed. 2 errors, 0 warnings. (took 141ms)
-
@chrishamm Somehow I got the right config file when building 3.5.1 but don't have it for 3.5.2. What is it called? I am not finding it with a quick scan.
Thanks, Chris!
-
@GeneRisi Make sure you have the right CoreN2G branch checked out:
> find ./ -name CoreTypes.h ./CoreN2G/src/CoreTypes.h
Also run a "Refresh" action via right-click on the different projects (in particular RepRapFirmware) after changing the source files. That sometimes fixes build errors for me.
-
I was forced to re-install Eclipse. After loading the individual projects, my screen looks like this. I no longer have the Hammer drop down menu. What am I missing?
Gene
-
@GeneRisi I'm sorry but I don't have OS X so I can't say much about Eclipse on it. I can right-click the RepRapFirmware project and choose
Build Project
or set the active config viaBuild Configurations -> Set Active
. -
@chrishamm I discovered the solution. After loading all of the projects, then do a full clean and then quit Eclipse. Restart Eclipse and now the board build options should be available under the Hammer icon.