Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login

    Problem with compiling 3.6

    Scheduled Pinned Locked Moved
    Firmware developers
    3
    15
    499
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • wuemundefined
      wuem
      last edited by

      Hello
      I tried to compile 3.6 with Eclipse on my Mac and followed all the instructions. I was able to build all required projects without errors. But when I tried to build RepRapFirmware I get multiple errors like:

      • Description Resource Path Location Type
        'isAlnum' was not declared in this scope; did you mean 'isalnum'? Variable.cpp /RepRapFirmware/src/ObjectModel line 40 C/C++ Problem
      • Description Resource Path Location Type
        'AdcBits' is not a member of 'AnalogIn'; did you mean 'LegacyAnalogIn::AdcBits'? Platform.cpp /RepRapFirmware/src/Platform line 127 C/C++ Problem
      • Description Resource Path Location Type
        Function 'isAlnum' could not be resolved Variable.cpp /RepRapFirmware/src/ObjectModel line 40 Semantic Error

      Could anybody give me a hint what could be wrong? I am not experienced in building firmware and therefore a little helpless.

      Thank you

      Michael

      chrishammundefined 1 Reply Last reply Reply Quote 0
      • chrishammundefined
        chrishamm administrators @wuem
        last edited by

        @wuem The build process for RRF is documented here: https://github.com/Duet3D/RepRapFirmware/wiki/Building-RepRapFirmware Can you confirm all the required branchs are checked out?

        Duet software engineer

        1 Reply Last reply Reply Quote 0
        • wuemundefined
          wuem
          last edited by

          @chrishamm
          Thank you for your reply. I had the wrong version of CoreN2G (3.5 instead of 3.6). Now I can compile if I choose Duet2, but when I choose Duet_MB6HC, I again get errors:

          • Description Resource Path Location Type
            fatal error: driver/gpio.h: No such file or directory gpio.c /RepRapFirmware/WiFiSocketServerRTOS-main/src/esp8266 line 3 C/C++ Problem
          • Description Resource Path Location Type
            fatal error: esp_attr.h: No such file or directory HSPI.cpp /RepRapFirmware/WiFiSocketServerRTOS-main/src/esp8266 line 23 C/C++ Problem
          • Description Resource Path Location Type
            fatal error: tusb.h: No such file or directory SerialCDC_tusb.cpp /CoreN2G/src line 21 C/C++ Problem
          • Description Resource Path Location Type
            fatal error: tusb.h: No such file or directory TinyUsbInterface.cpp /CoreN2G/src line 28 C/C++ Problem

          Where could now be the problem?

          Thank you

          chrishammundefined 1 Reply Last reply Reply Quote 0
          • chrishammundefined
            chrishamm administrators @wuem
            last edited by

            @wuem tusb.h is part of LibTinyusb which has git submodules. Perhaps you haven't initialized them correctly, try to run git submodule update --init in that directory and check if it helps. The C/C++ error list isn't always correct, better share the command output when you attempt to build a configuration if it fails again.

            Duet software engineer

            1 Reply Last reply Reply Quote 0
            • wuemundefined
              wuem
              last edited by

              @chrishamm
              Ok. I downloaded everything again and updated LibTinyusb. Now I get the following errors:

              In file included from ../src/Networking/ESP8266WiFi/WiFiSocket.cpp:15:
              ../src/Networking/ESP8266WiFi/WiFiInterface.h:17:10: fatal error: MessageFormats.h: No such file or directory
              17 | #include <MessageFormats.h>
              | ^~~~~~~~~~~~~~~~~~
              compilation terminated.
              make[1]: *** [src/Networking/ESP8266WiFi/WiFiSocket.o] Error 1
              make[1]: *** Waiting for unfinished jobs....
              Building file: ../src/Networking/Network.cpp
              In file included from ../src/Networking/ESP8266WiFi/WiFiInterface.cpp:8:
              ../src/Networking/ESP8266WiFi/WiFiInterface.h:17:10: fatal error: MessageFormats.h: No such file or directory
              17 | #include <MessageFormats.h>
              | ^~~~~~~~~~~~~~~~~~
              compilation terminated.
              Finished building: ../src/Networking/LwipEthernet/Lwip/src/apps/mdns/mdns.c
              Invoking: Cross G++ Compiler
              arm-none-eabi-g++ -std=gnu++17 -D__SAME70Q20B__ -DRTOS -DDUET3_MB6HC -DMQTTC_PAL_FILE="Networking/MQTT/mqtt_pal.h" -D_XOPEN_SOURCE -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware/LibTinyusb" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware/CoreN2G" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware/FreeRTOS" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware/CoreN2G/src" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware/CoreN2G/src/SAM4S_4E_E70" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware/CoreN2G/src/SAM4S_4E_E70/asf/common/utils" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware/CoreN2G/src/SAM4S_4E_E70/asf/sam/utils/cmsis/same70/include" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware/CoreN2G/src/arm/CMSIS/5.4.0/CMSIS/Core/Include" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware/CoreN2G/src/SAM4S_4E_E70/SAME70" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware/CoreN2G/src/SAM4S_4E_E70/asf" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware/CoreN2G/src/SAM4S_4E_E70/asf/sam/utils" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware/CoreN2G/src/SAM4S_4E_E70/asf/sam/utils/preprocessor" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware/CoreN2G/src/SAM4S_4E_E70/asf/sam/utils/header_files" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware/CoreN2G/src/SAM4S_4E_E70/asf/sam/drivers" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware/src" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware/src/Hardware/SAME70" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware/src/Networking" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware/src/Networking/LwipEthernet/Lwip" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware/src/Networking/LwipEthernet/Lwip/src/include" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware/src/Networking/MQTT/MQTT_C/include" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware/FreeRTOS/src/include" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware/FreeRTOS/src/portable/GCC/ARM_CM7/r0p1" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware/RRFLibraries/src" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware/CANlib/src" -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 -fexceptions -nostdlib -Wundef -Wdouble-promotion -Werror=return-type -Wsuggest-override -fsingle-precision-constant "-Wa,-ahl=Network.s" -fstack-usage -MMD -MP -MF"src/Networking/Network.d" -MT"src/Networking/Network.o" -o "src/Networking/Network.o" "../src/Networking/Network.cpp"

              make[1]: *** [src/Networking/ESP8266WiFi/WiFiInterface.o] Error 1
              In file included from ../src/Networking/ESP8266WiFi/WifiFirmwareUploader.cpp:12:
              ../src/Networking/ESP8266WiFi/WiFiInterface.h:17:10: fatal error: MessageFormats.h: No such file or directory
              17 | #include <MessageFormats.h>
              | ^~~~~~~~~~~~~~~~~~
              compilation terminated.
              make[1]: *** [src/Networking/ESP8266WiFi/WifiFirmwareUploader.o] Error 1
              In file included from ../src/Networking/Network.cpp:34:
              ../src/Networking/ESP8266WiFi/WiFiInterface.h:17:10: fatal error: MessageFormats.h: No such file or directory
              17 | #include <MessageFormats.h>
              | ^~~~~~~~~~~~~~~~~~
              compilation terminated.
              make[1]: *** [src/Networking/Network.o] Error 1
              Finished building: ../src/Networking/LwipEthernet/LwipSocket.cpp

              Finished building: ../src/Networking/LwipEthernet/LwipEthernetInterface.cpp

              Finished building: ../src/Networking/FtpResponder.cpp

              Finished building: ../src/Networking/HttpResponder.cpp

              make: *** [all] Error 2
              "make -j9 all" terminated with exit code 2. Build might be incomplete.

              16:28:26 Build Failed. 10 errors, 0 warnings. (took 4s.214ms)

              Any idea on what to try next?

              chrishammundefined 1 Reply Last reply Reply Quote 0
              • chrishammundefined
                chrishamm administrators @wuem
                last edited by

                @wuem MessageFormats.h is part of the WiFiSocketServerRTOS project here: https://github.com/Duet3D/WiFiSocketServerRTOS/tree/main/src/include

                Duet software engineer

                1 Reply Last reply Reply Quote 0
                • wuemundefined
                  wuem
                  last edited by

                  @chrishamm
                  Thank you.

                  I just double checked MessageFormats.h is existing in WiFiSocketServerRTOS/src/include in the project on Eclipse. My problem is, that when compiling, it seems as if it can not be found.

                  Where could be my problem?

                  dc42undefined 1 Reply Last reply Reply Quote 0
                  • dc42undefined
                    dc42 administrators @wuem
                    last edited by

                    @wuem I suggest you open the compiler settings and check that you have the correct include paths.

                    ead1771a-f91f-4c6b-b867-618f3cee47c6-image.png

                    Duet WiFi hardware designer and firmware engineer
                    Please do not ask me for Duet support via PM or email, use the forum
                    http://www.escher3d.com, https://miscsolutions.wordpress.com

                    1 Reply Last reply Reply Quote 0
                    • wuemundefined
                      wuem
                      last edited by

                      @dc42
                      Thank you. That helped somehow. My problem is, that in the workspace, the folder is called WiFiSocketServerRTOS, but in the compiler settings, it is called DuetWiFiSocketServerRTOS. This must have been the reason that it was not able to find it. So, now I added WiFiSocketServerRTOS to the paths. And then this error was solved.

                      I then downloaded everything again from GitHub and now, this problem didn't appear any longer (the path has the right name).

                      But now, I get the next errors (which I also had before):

                      ../WiFiSocketServerRTOS-main/src/esp8266/HSPI.cpp:23:10: fatal error: esp_attr.h: No such file or directory
                      23 | #include "esp_attr.h"
                      | ^~~~~~~~~~~~
                      compilation terminated.
                      make[1]: *** [WiFiSocketServerRTOS-main/src/esp8266/HSPI.o] Error 1
                      make[1]: *** Waiting for unfinished jobs....
                      Building file: ../WiFiSocketServerRTOS-main/src/esp8266/gpio.c
                      Invoking: Cross GCC Compiler
                      arm-none-eabi-gcc -std=gnu99 -D__SAME70Q20B__ -DRTOS -DDUET3_MB6HC -DMQTTC_PAL_FILE="Networking/MQTT/mqtt_pal.h" -Dnoexcept= -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware-3.6-dev/LibTinyusb-master" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware-3.6-dev/CoreN2G-3.6-dev" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware-3.6-dev/FreeRTOS-3.5-dev" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware-3.6-dev/CoreN2G-3.6-dev/src" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware-3.6-dev/CoreN2G-3.6-dev/src/SAM4S_4E_E70" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware-3.6-dev/CoreN2G-3.6-dev/src/SAM4S_4E_E70/asf" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware-3.6-dev/CoreN2G-3.6-dev/src/SAM4S_4E_E70/asf/sam/drivers" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware-3.6-dev/CoreN2G-3.6-dev/src/SAM4S_4E_E70/asf/sam/utils" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware-3.6-dev/CoreN2G-3.6-dev/src/SAM4S_4E_E70/asf/common/utils" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware-3.6-dev/CoreN2G-3.6-dev/src/SAM4S_4E_E70/asf/sam/utils/preprocessor" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware-3.6-dev/CoreN2G-3.6-dev/src/SAM4S_4E_E70/asf/sam/utils/header_files" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware-3.6-dev/CoreN2G-3.6-dev/src/SAM4S_4E_E70/asf/sam/utils/cmsis/same70/include" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware-3.6-dev/CoreN2G-3.6-dev/src/arm/CMSIS/5.4.0/CMSIS/Core/Include" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware-3.6-dev/CoreN2G-3.6-dev/src/SAM4S_4E_E70/SAME70" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware-3.6-dev/src" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware-3.6-dev/src/Networking/LwipEthernet/Lwip" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware-3.6-dev/src/Networking/LwipEthernet/Lwip/src/include" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware-3.6-dev/src/Networking/MQTT/MQTT_C/include" -I"/Users/zhaw/Documents/Studienarbeiten/PA_BA/BA25/BA_FS_25_wuem_185_HighSpeed/Firmware/Build/RepRapFirmware-3.6-dev/RRFLibraries-3.5-dev/src" -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 -nostdlib -Wundef -Wdouble-promotion -Werror=return-type -Werror=implicit -fsingle-precision-constant "-Wa,-ahl=gpio.s" -MMD -MP -MF"WiFiSocketServerRTOS-main/src/esp8266/gpio.d" -MT"WiFiSocketServerRTOS-main/src/esp8266/gpio.o" -o "WiFiSocketServerRTOS-main/src/esp8266/gpio.o" "../WiFiSocketServerRTOS-main/src/esp8266/gpio.c"
                      Finished building: ../src/CAN/CanMotion.cpp

                      ../WiFiSocketServerRTOS-main/src/esp8266/gpio.c:3:10: fatal error: driver/gpio.h: No such file or directory
                      3 | #include "driver/gpio.h"
                      | ^~~~~~~~~~~~~~~
                      compilation terminated.
                      make[1]: *** [WiFiSocketServerRTOS-main/src/esp8266/gpio.o] Error 1

                      And here I don't find the path to add... So what to do?

                      dc42undefined 1 Reply Last reply Reply Quote 0
                      • dc42undefined
                        dc42 administrators @wuem
                        last edited by

                        @wuem as stated in the build instructions, you don't need to build the WiFiSocketServerRtos project.

                        Duet WiFi hardware designer and firmware engineer
                        Please do not ask me for Duet support via PM or email, use the forum
                        http://www.escher3d.com, https://miscsolutions.wordpress.com

                        1 Reply Last reply Reply Quote 0
                        • wuemundefined
                          wuem
                          last edited by

                          @dc42
                          Ok. That helped. Now I am moving forward. Compiling for Duet2 now works. When I want to complie for Duet3_MB6HC with the required board configurations, I get for the CoreN2G the following errors:
                          Bildschirmfoto 2025-05-27 um 08.27.46.png

                          So, there seems something else missing. How to fix this?

                          dc42undefined 1 Reply Last reply Reply Quote 0
                          • dc42undefined
                            dc42 administrators @wuem
                            last edited by

                            @wuem check that you have the correct include folders again in the C++ compile settings. Unless you have changed the .cproject file, they should all be correct.

                            f07aa681-dea8-475a-abd0-137c344a9771-image.png

                            Duet WiFi hardware designer and firmware engineer
                            Please do not ask me for Duet support via PM or email, use the forum
                            http://www.escher3d.com, https://miscsolutions.wordpress.com

                            1 Reply Last reply Reply Quote 0
                            • wuemundefined
                              wuem
                              last edited by

                              @dc42 I checked the settings and they are the same as you show in your settings:
                              Bildschirmfoto 2025-05-27 um 10.13.20.png

                              But what I realised is that I don't have a LibTinyusb/src/tinyusb/src folder (only LibTinyusb/src/tinyusb):
                              Bildschirmfoto 2025-05-27 um 10.13.57.png

                              Could this be the problem?

                              dc42undefined 1 Reply Last reply Reply Quote 0
                              • dc42undefined
                                dc42 administrators @wuem
                                last edited by dc42

                                @wuem see this post earlier in this thread https://forum.duet3d.com/post/355672.

                                Git submodules are a pain, but sometimes when using third-party code we are forced to use them.

                                Duet WiFi hardware designer and firmware engineer
                                Please do not ask me for Duet support via PM or email, use the forum
                                http://www.escher3d.com, https://miscsolutions.wordpress.com

                                1 Reply Last reply Reply Quote 0
                                • wuemundefined
                                  wuem
                                  last edited by

                                  @dc42
                                  Thank you. Now it finally worked...

                                  1 Reply Last reply Reply Quote 0
                                  • First post
                                    Last post
                                  Unless otherwise noted, all forum content is licensed under CC-BY-SA