Duet3D Logo

    Duet3D

    • Register
    • Login
    • Search
    • Categories
    • Tags
    • Documentation
    • Order

    Problem to compile RepRap Ver 1.18.1 firmware

    Firmware installation
    4
    13
    1667
    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.
    • Electra
      Electra last edited by

      I don't know if there are any better place or forum for this question.
      I have problem to compile the source code for RepRap firmware Ver 1.18.1 from Github.

      To compile the CoreNG works without any problems, but when I compile the RepRap firmware I got errors 😞
      The compiler doesn't found the MessageFormats.h (on row 14 on to file Networks.h) file and I can't found this file on any directory.

      Eclipse's "Building project" error code:
      C:\Eclipse\Firmware\RepRapFirmware\src\DuetNG\DuetWiFi/Network.h:14:28: fatal error: MessageFormats.h: No such file or directory
      #include "MessageFormats.h"

      Installed software

      • Windows 10 64 bit (with the latest update)
      • Eclipse Neon.3
      • Arduino 1.8.2 with SAM Boards Ver 1.6.11
      • Reprap firmware ver 1.18.1 and CoreNG firmware Ver 1.18

      Eclipse are installed at C:\Eclipse\…
      Eclipse Workspace are set to C:\Eclipse\Firmware
      I change the path in both Eclipse project (CoreNG & RepRapFirmware) for the compiler to directory

      Eclipse/"Project"/"Properties"/"C/C++ Built"/"Settings"/"Tools settings"/"Crosss Settings"/"Path"
      New path : C:\Users"Users"\AppData\Local\Arduino15\Package\arduino\tools\arm-none-eabi-gcc\4.8.3-2014q1\bin

      Arduino is installed at default directory C:\Program (x86)\Arduino...

      Reprap and CoreNG files are in to directory
      C:\Eclipse\Firmware\RepRapFirmware...

      CoreNG files are at directory
      C:\Eclipse\Firmware\CoreNG...

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

        You are trying to compile development code that is later than version 1.18.1. I suggest you go to https://github.com/dc42/RepRapFirmware/releases and download the sources to 1.18.1 as a zip.

        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
        • Electra
          Electra last edited by

          When I download the ZIP-file from "Master" branch (instead of "Dev") at Github, it works to compile without any errors 🙂

          Thanks dc42

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

            Check which version it is - I can't remember whether I updated the master branch at version 1.18 or 1.18.1.

            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
            • Kulitorum
              Kulitorum last edited by

              I just downloaded the dev branch (to try and fix the tool z-offset not used bug) and I am missing a file, MessageFormats.h

              Can you please add it to github?

              Thanks.

              Kulitorum

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

                You need to add project DuetWiFiSocketServer to your Eclipse workspace to get that file.

                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
                • Kulitorum
                  Kulitorum last edited by

                  And to compile DuetWifiSocketServer I need what tools?

                  16:40:13 **** Incremental Build of configuration Release for project DuetWiFiSocketServer ****
                  make all
                  'Building file: ../src/Connection.cpp'
                  'Invoking: Cross G++ Compiler'
                  xtensa-lx106-elf-g++ -std=gnu++11 -D__ets__ -DICACHE_FLASH -DF_CPU=80000000L -DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP12 -DARDUINO=10606 -Os -Wall -c -g -mlongcalls -mtext-section-literals -fno-exceptions -fno-rtti -falign-functions=4 -ffunction-sections -fdata-sections -MMD -MP -MF"src/Connection.d" -MT"src/Connection.o" -o "src/Connection.o" "../src/Connection.cpp"
                  'xtensa-lx106-elf-g++' is not recognized as an internal or external command,
                  operable program or batch file.
                  make: *** [src/Connection.o] Error 1

                  16:40:13 Build Finished (took 592ms)

                  1 Reply Last reply Reply Quote 0
                  • lars
                    lars last edited by

                    Maybe an update of https://github.com/dc42/RepRapFirmware/blob/dev/BuildInstructions.md is in order…
                    @Kulitorum: As a workaround you can copy MessageFormats.h to RepRapFirmware/src and you should be able to build the project.

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

                      You don't need to compile DuetWiFiSocketServer if you only want to change the main firmware.

                      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
                      • lars
                        lars last edited by

                        @dc42:

                        You don't need to compile DuetWiFiSocketServer if you only want to change the main firmware.

                        Isnt't BuildInstructions.md outdated? Following the instructions I could not build RepRapFirmware…

                        1 Reply Last reply Reply Quote 0
                        • Kulitorum
                          Kulitorum last edited by

                          Rmpfh….

                          Still does not compile, and I have no idea what _sbrk is:

                          22:45:17 **** Incremental Build of configuration DuetWiFi for project RepRapFirmware ****
                          make all
                          'Building target: DuetWiFiFirmware.elf'
                          'Invoking: Cross G++ Linker'
                          arm-none-eabi-gcc -L"C:\Eclipse\ReprapFirmware\CoreNG\SAM3X8E" -Os -Wl,--gc-sections -Wl,--fatal-warnings -mcpu=cortex-m4 -TC:\Eclipse\ReprapFirmware\CoreNG\variants\duetNG\linker_scripts\gcc\flash.ld -Wl,-Map,C:\Eclipse\ReprapFirmware\RepRapFirmware\RepRapFirmware-dev\DuetWiFi/DuetWiFiFirmware.map -o "DuetWiFiFirmware.elf" -mthumb -Wl,--cref -Wl,--check-sections -Wl,--gc-sections -Wl,--entry=Reset_Handler -Wl,--unresolved-symbols=report-all -Wl,--warn-common -Wl,--warn-section-align -Wl,--warn-unresolved-symbols -Wl,--start-group ./src/Storage/FileStore.o ./src/Storage/MassStorage.o ./src/Movement/Kinematics/CartesianKinematics.o ./src/Movement/Kinematics/CoreBaseKinematics.o ./src/Movement/Kinematics/CoreXYKinematics.o ./src/Movement/Kinematics/CoreXZKinematics.o ./src/Movement/Kinematics/Kinematics.o ./src/Movement/Kinematics/LinearDeltaKinematics.o ./src/Movement/Kinematics/ScaraKinematics.o ./src/Movement/BedProbing/Grid.o ./src/Movement/BedProbing/RandomProbePointSet.o ./src/Movement/DDA.o ./src/Movement/DriveMovement.o ./src/Movement/Move.o ./src/Libraries/sha1/sha1.o ./src/Libraries/Math/Isqrt.o ./src/Libraries/General/StringRef.o ./src/Libraries/Fatfs/ccsbcs.o ./src/Libraries/Fatfs/diskio.o ./src/Libraries/Fatfs/fattime_rtc.o ./src/Libraries/Fatfs/ff.o ./src/Heating/Sensors/CpuTemperatureSensor.o ./src/Heating/Sensors/CurrentLoopTemperatureSensor.o ./src/Heating/Sensors/RtdSensor31865.o ./src/Heating/Sensors/SpiTemperatureSensor.o ./src/Heating/Sensors/TemperatureSensor.o ./src/Heating/Sensors/Thermistor.o ./src/Heating/Sensors/ThermocoupleSensor31855.o ./src/Heating/Sensors/TmcDriverTemperatureSensor.o ./src/Heating/FOPDT.o ./src/Heating/Heat.o ./src/Heating/Pid.o ./src/Heating/TemperatureError.o ./src/GCodes/GCodeBuffer.o ./src/GCodes/GCodeInput.o ./src/GCodes/GCodeMachineState.o ./src/GCodes/GCodeQueue.o ./src/GCodes/GCodes.o ./src/GCodes/GCodes2.o ./src/DuetNG/DuetWiFi/Network.o ./src/DuetNG/DuetWiFi/Socket.o ./src/DuetNG/DuetWiFi/WifiFirmwareUploader.o ./src/DuetNG/DueXn.o ./src/DuetNG/FirmwareUpdater.o ./src/DuetNG/FtpResponder.o ./src/DuetNG/HttpResponder.o ./src/DuetNG/NetworkBuffer.o ./src/DuetNG/NetworkResponder.o ./src/DuetNG/SX1509.o ./src/DuetNG/TMC2660.o ./src/DuetNG/TelnetResponder.o ./src/Fan.o ./src/OutputMemory.o ./src/Platform.o ./src/PrintMonitor.o ./src/RepRap.o ./src/RepRapFirmware.o ./src/Roland.o ./src/Scanner.o ./src/Tool.o -lCoreNG -Wl,--end-group -lm -gcc
                          ./src/Platform.o: In function Platform::SoftwareReset(unsigned short, unsigned long const*)': Platform.cpp:(.text._ZN8Platform13SoftwareResetEtPKm+0x2a): warning: undefined reference to flash_read_user_signature'
                          Platform.cpp:(.text._ZN8Platform13SoftwareResetEtPKm+0x32): warning: undefined reference to flash_erase_user_signature' Platform.cpp:(.text._ZN8Platform13SoftwareResetEtPKm+0x90): warning: undefined reference to flash_write_user_signature'
                          ./src/Platform.o: In function Platform::UpdateFirmware()': Platform.cpp:(.text._ZN8Platform14UpdateFirmwareEv+0x36): warning: undefined reference to flash_erase_sector'
                          ./src/Platform.o: In function Platform::Diagnostics(MessageType)': Platform.cpp:(.text._ZN8Platform11DiagnosticsE11MessageType+0x16a): warning: undefined reference to flash_read_user_signature'
                          c:/arduino-1.5.8/hardware/tools/gcc-arm-none-eabi-4.8.3-2014q1/bin/../lib/gcc/arm-none-eabi/4.8.3/../../../../arm-none-eabi/lib/armv7e-m\libg.a(lib_a-sbrkr.o): In function _sbrk_r': sbrkr.c:(.text._sbrk_r+0xc): warning: undefined reference to _sbrk'
                          collect2.exe: error: ld returned 1 exit status
                          make: *** [DuetWiFiFirmware.elf] Error 1

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

                            @lars:

                            @dc42:

                            You don't need to compile DuetWiFiSocketServer if you only want to change the main firmware.

                            Isnt't BuildInstructions.md outdated? Following the instructions I could not build RepRapFirmware…

                            I have updated BuildInstructions.md.

                            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
                            • dc42
                              dc42 administrators last edited by

                              @Kulitorum:

                              Rmpfh….

                              Still does not compile, and I have no idea what _sbrk is:

                              22:45:17 **** Incremental Build of configuration DuetWiFi for project RepRapFirmware ****
                              make all
                              'Building target: DuetWiFiFirmware.elf'
                              'Invoking: Cross G++ Linker'
                              arm-none-eabi-gcc -L"C:\Eclipse\ReprapFirmware\CoreNG\SAM3X8E" -Os -Wl,--gc-sections -Wl,--fatal-warnings -mcpu=cortex-m4 ...

                              Your library path is wrong. For the Duet WiFi build of RRF, you should be using the SAM4E build of CoreNG, not the SAM3X8E one.

                              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
                              • First post
                                Last post
                              Unless otherwise noted, all forum content is licensed under CC-BY-SA