This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

.\_build\nrf52840_xxaa.axf: Error: L6218E: Undefined symbol nfc_t4t_setup

Hi,

I am trying to port the nRF5_SDK_17.0.2_d674dde\examples\nfc\writable_ndef_msg and my linker cant find the definition for the following symbols-

linking...
.\_build\nrf52840_xxaa.axf: Error: L6218E: Undefined symbol nfc_t4t_emulation_start (referred from hal_nfc_tag.o).
.\_build\nrf52840_xxaa.axf: Error: L6218E: Undefined symbol nfc_t4t_ndef_rwpayload_set (referred from hal_nfc_tag.o).
.\_build\nrf52840_xxaa.axf: Error: L6218E: Undefined symbol nfc_t4t_setup (referred from hal_nfc_tag.o).

I am using uVision Keil build environment and made sure to make the changes as per sdk_config.h in my test app.

I also added the c/c++, asm include paths with the following entries and still these symbols are not resolved-

..\components\nfc\ndef\generic\message;
..\components\nfc\ndef\generic\record;
..\components\nfc\ndef\uri;
..\components\nfc\platform;
..\components\nfc\t4t_lib 

Can you please help to resolve this linker error ?

regards,

Anil

Parents
  • Hi Anil

    What changes did you make to the sdk_config.h exactly? I just tested building and running the writable_ndef_msg example on my end (using SES as that's what I have installed on my home office computer) and did not run into any build/linker errors like this. A normal issue when seeing linker errors like this is that the path to the library/driver files are too far from the root path to be found. So if that's the case, try moving the entire SDK closer to C:\ or wherever you have placed it.

    You can also check to make sure that the files your linker can't find are actually located in \components\nfc\... and aren't missing for some reason. If so, try unzipping your SDK file again, as something must have gone wrong with the setup.

    Best regards,

    Simon

Reply
  • Hi Anil

    What changes did you make to the sdk_config.h exactly? I just tested building and running the writable_ndef_msg example on my end (using SES as that's what I have installed on my home office computer) and did not run into any build/linker errors like this. A normal issue when seeing linker errors like this is that the path to the library/driver files are too far from the root path to be found. So if that's the case, try moving the entire SDK closer to C:\ or wherever you have placed it.

    You can also check to make sure that the files your linker can't find are actually located in \components\nfc\... and aren't missing for some reason. If so, try unzipping your SDK file again, as something must have gone wrong with the setup.

    Best regards,

    Simon

Children
  • Thanks Simon for the update.

    I was able to build and run the writable_ndef_msg example however when I started the porting these 3 APIs, their definition was not found.

    I fixed the issue, by adding the library (components\nfc\t4t_lib\nfc_t4t_lib_keil.lib) in Keil project and these 3 APIs linker issue is resolved.

    To my surprise, this library is not self sufficient and uses function definitions from other c files which I am adding now and resolving those symbols.

    Thanks for your time.

    regards,

    Anil

Related