Problem to compile RepRap Ver 1.18.1 firmware



  • 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...


  • administrators

    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.



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

    Thanks dc42


  • administrators

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



  • 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


  • administrators

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



  • 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)



  • 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.


  • administrators

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



  • @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…



  • 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 toflash_read_user_signature'
    Platform.cpp:(.text._ZN8Platform13SoftwareResetEtPKm+0x32): warning: undefined reference to flash_erase_user_signature' Platform.cpp:(.text._ZN8Platform13SoftwareResetEtPKm+0x90): warning: undefined reference toflash_write_user_signature'
    ./src/Platform.o: In function Platform::UpdateFirmware()': Platform.cpp:(.text._ZN8Platform14UpdateFirmwareEv+0x36): warning: undefined reference toflash_erase_sector'
    ./src/Platform.o: In function Platform::Diagnostics(MessageType)': Platform.cpp:(.text._ZN8Platform11DiagnosticsE11MessageType+0x16a): warning: undefined reference toflash_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


  • administrators

    @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.


  • administrators

    @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.


Locked
 

Looks like your connection to Duet3D was lost, please wait while we try to reconnect.