Hot!EZBL linker issue PIC24FJ1024GB610

Author
JesterFreeze
New Member
  • Total Posts : 3
  • Reward points : 0
  • Joined: 2017/02/16 02:47:11
  • Location: 0
  • Status: offline
2017/03/17 08:40:31 (permalink)
0

EZBL linker issue PIC24FJ1024GB610

Hello everyone,
 
For the purpose of updating my program without the need of MPlabX, I am trying to set up a bootloader using the Easy Bootloader given by Microchip.
Configuration : MPlabX v3.55 / XC16 1.31 / PIC24FJ1024GB610
 
Unfortunatly, while every other hardware configuration let the uart_bootloader compile, the one for my pic is not working and I get those errors instead :
 
EZBL: Starting linking pass 1 of 2
[...]
c:\program files (x86)\microchip\xc16\v1.31\bin\bin\..\bin/elf-ld.exe: skipping incompatible ezbl_integration/ezbl_lib16.a when searching for ezbl_integration/ezbl_lib16.a
c:\program files (x86)\microchip\xc16\v1.31\bin\bin\..\bin/elf-ld.exe: skipping incompatible ezbl_integration/ezbl_lib16.a when searching for ezbl_integration/ezbl_lib16.a
ezbl_build_standalone.gld.00:3734: undefined symbol `_EZBL_ForwardBootloaderISR' referenced in expression
make[2]: *** [dist/default/production/ex_boot_uart.production.hex] Error 255
make[1]: *** [.build-conf] Error 2
make: *** [.build-impl] Error 2

 
Does someone also tried to get a bootloader working and got those errors ?
 
Thanks for reading.
#1

6 Replies Related Threads

    hark
    New Member
    • Total Posts : 14
    • Reward points : 0
    • Joined: 2017/02/21 14:23:33
    • Location: 0
    • Status: offline
    Re: EZBL linker issue PIC24FJ1024GB610 2017/03/24 11:58:19 (permalink)
    0
    Hi JesterFreeze,
     
    I just got the EZBL to work on my chip (PIC24FV32KA304) using an older version of the compiler (XC 1.20). I would suggest downloading the older version of the compiler, installing it, switching to it in Project Properties (in Compiler Toolchain section on the right) and recompiling. This older version of the compiler seems to play better with EZBL.
    #2
    tread
    New Member
    • Total Posts : 6
    • Reward points : 0
    • Joined: 2017/06/08 11:10:12
    • Location: 0
    • Status: offline
    Re: EZBL linker issue PIC24FJ1024GB610 2017/08/01 10:50:17 (permalink)
    0
    Please solve this issue. Ran into the same problem with MPlabX 3.65 XC 16 1.31 for picfj1024gb610. All of the demos do no build for this mcu all give random linker script errors to undefined symbols. In the Uart_iscp example I get _CRC_32 error as an undefined symbol.
    Ive attempted using legacy libraries.
    Adding EXTERN to the linker script to try an resolve the dependency but nothing works.
     
    I would really like a solution using the current compiler version as half of the code for this MCU is done in pre 1.25 and the other half seems to account for any version over 1.25. NOT an EASY BOOTLOADER!
     
    Also, I assume that it might be related but the library file located in the integration folder is skipped and for some reason there is no oscilator information. Maybe this might help someone diagnose this issue. I am hoping it might just need an additional flag to alter the build instructions.
    <using java 1.8.141> 
    com.microchip.crownking 2017-08-01T17:45Z INFO Searching jar-containing directory: /opt/microchip/mplabx/v3.65/mplab_ide/mplablibs/modules/ext
    com.microchip.crownking.edc 2017-08-01T17:45Z INFO Cannot find an <edc:Oscillator> element.
    "/opt/microchip/xc16/v1.31/bin/bin/../bin/elf-ld: skipping incompatible ezbl_integration/ezbl_lib16.a when searching for ezbl_integration/ezbl_lib16.a
    /opt/microchip/xc16/v1.31/bin/bin/../bin/elf-ld: skipping incompatible ezbl_integration/ezbl_lib16.a when searching for ezbl_integration/ezbl_lib16.a"
    post edited by tread - 2017/08/01 10:53:12
    #3
    DavidLee74
    Chips-n-Salsa design
    • Total Posts : 14
    • Reward points : 0
    • Joined: 2017/05/09 12:18:23
    • Location: 0
    • Status: offline
    Re: EZBL linker issue PIC24FJ1024GB610 2017/10/12 10:12:06 (permalink)
    0
    I am getting identical errors trying to compile the ex_boot_uart project for a PIC24FJ256GB210. I am using MPLAB 3.35. XC16 v 1.3.
    #4
    DavidLee74
    Chips-n-Salsa design
    • Total Posts : 14
    • Reward points : 0
    • Joined: 2017/05/09 12:18:23
    • Location: 0
    • Status: offline
    Re: EZBL linker issue PIC24FJ1024GB610 2017/10/16 06:42:51 (permalink)
    0
    UPDATE: My error was caused because I was setting my target device to one not supported "out of the box" by the example code. 
    #5
    tread
    New Member
    • Total Posts : 6
    • Reward points : 0
    • Joined: 2017/06/08 11:10:12
    • Location: 0
    • Status: offline
    Re: EZBL linker issue PIC24FJ1024GB610 2017/10/16 13:01:48 (permalink)
    0
    Okay Microchip.... you win....
     
    Its hard say that your EZBL doesn't work when the new release from 10/4/2017 works flawlessly on my PIC24FJ1024GB610. Also.. touche! I noticed when you open up the "Hands on bootloading project.pdf" in the directory that it specifically address the same MCU for the witnessed here.
     
    No changes just builds.
     
    Confirmed Working version 2.0.4 EZBL
    Linux Mint 18.2 4.10 Kernel
    MPLAB v4.01 XC16 v 1.32b
     
     
    #6
    TRP
    New Member
    • Total Posts : 3
    • Reward points : 0
    • Joined: 2013/03/13 15:34:56
    • Location: 0
    • Status: offline
    Re: EZBL linker issue PIC24FJ1024GB610 2017/11/04 09:50:39 (permalink)
    0
    I'll add my 2 cents worth as I just got this sorted out for a non "out of the box" uart application.
     Ensure that  ex_boot_uart project > Libraries includes ezbl_lib.a object file found in the ezbl_integration folder.
     Edit the hardware initializer file as needed for your hardware.
     Ensure that the project configuration is as described in the documentation.
     Check that the last line in Makefile is "include ezbl_integration/ezbl_boot.mk"
     
    To merge EZBL with an application project:
    1. Copy the ezbl_integration folder and makefile from the ex_app_led_blink project to your application's project folder.
    2. Add ezbl.h, Makefile(if not already included), ezbl_app.mk, ex_boot_uart.merge.gld, ex_boot_uart.merge.s and the ezbl_lib.a files to your application project. Other than Makefile, these are located in the ezbl_integration folder.
    3. Check that the last line in Makefile is "include ezbl_integration/ezbl_app.mk"
    4. Be sure to edit the path for "appMergeDestFolders =" in the ezbl_boot.mk file of the bootloader project so that the merge files are copied to your projects ezbl_integration folder anytime the bootloader project is rebuilt.
    5. Build the application project.
     
     
    post edited by TRP - 2017/11/14 21:01:55

    Attached Image(s)

    #7
    Jump to:
    © 2017 APG vNext Commercial Version 4.5