We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Hello,
I'm developing a project on IAR Embedded Workbench IDE - arm 8.40.2 that uses EmbOS (embOS_CortexM_IAR_V8_V5061) on a NXP IMXRT1062xxx5A board.
My configuration linker file is the following:
/*###ICF### Section handled by ICF editor, don't touch! ****/ /*-Editor annotation file-*/ /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_4.xml" */ /*-Specials-*/ define symbol __ICFEDIT_intvec_start__ = 0x00000000; /*-Memory Regions-*/ define symbol __ICFEDIT_region_IROM1_start__ = 0x00000000; define symbol __ICFEDIT_region_IROM1_end__ = 0x0001FFFF; define symbol __ICFEDIT_region_IROM2_start__ = 0x0; define symbol __ICFEDIT_region_IROM2_end__ = 0x0; define symbol __ICFEDIT_region_EROM1_start__ = 0x60000000; define symbol __ICFEDIT_region_EROM1_end__ = 0x7EFFFFFF; define symbol __ICFEDIT_region_EROM2_start__ = 0x0; define symbol __ICFEDIT_region_EROM2_end__ = 0x0; define symbol __ICFEDIT_region_EROM3_start__ = 0x0; define symbol __ICFEDIT_region_EROM3_end__ = 0x0; define symbol __ICFEDIT_region_IRAM1_start__ = 0x20000000; define symbol __ICFEDIT_region_IRAM1_end__ = 0x2001FFFF; define symbol __ICFEDIT_region_IRAM2_start__ = 0x20200000; define symbol __ICFEDIT_region_IRAM2_end__ = 0x2023FFFF; define symbol __ICFEDIT_region_ERAM1_start__ = 0x0; define symbol __ICFEDIT_region_ERAM1_end__ = 0x0; define symbol __ICFEDIT_region_ERAM2_start__ = 0x0; define symbol __ICFEDIT_region_ERAM2_end__ = 0x0; define symbol __ICFEDIT_region_ERAM3_start__ = 0x0; define symbol __ICFEDIT_region_ERAM3_end__ = 0x0; /*-Sizes-*/ define symbol __ICFEDIT_size_cstack__ = 0x2000; define symbol __ICFEDIT_size_proc_stack__ = 0x0; define symbol __ICFEDIT_size_heap__ = 0x8000; /**** End of ICF editor section. ###ICF###*/ define memory mem with size = 4G; define region IROM_region = mem:[from __ICFEDIT_region_IROM1_start__ to __ICFEDIT_region_IROM1_end__] | mem:[from __ICFEDIT_region_IROM2_start__ to __ICFEDIT_region_IROM2_end__]; define region EROM_region = mem:[from __ICFEDIT_region_EROM1_start__ to __ICFEDIT_region_EROM1_end__] | mem:[from __ICFEDIT_region_EROM2_start__ to __ICFEDIT_region_EROM2_end__] | mem:[from __ICFEDIT_region_EROM3_start__ to __ICFEDIT_region_EROM3_end__]; define region IRAM_region = mem:[from __ICFEDIT_region_IRAM1_start__ to __ICFEDIT_region_IRAM1_end__] | mem:[from __ICFEDIT_region_IRAM2_start__ to __ICFEDIT_region_IRAM2_end__]; define region ERAM_region = mem:[from __ICFEDIT_region_ERAM1_start__ to __ICFEDIT_region_ERAM1_end__] | mem:[from __ICFEDIT_region_ERAM2_start__ to __ICFEDIT_region_ERAM2_end__] | mem:[from __ICFEDIT_region_ERAM3_start__ to __ICFEDIT_region_ERAM3_end__]; define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { }; define block PROC_STACK with alignment = 8, size = __ICFEDIT_size_proc_stack__ { }; define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { }; do not initialize { section .noinit }; do not initialize { readwrite }; do not initialize { zeroinit }; if (isdefinedsymbol(__USE_DLIB_PERTHREAD)) { // Required in a multi-threaded application initialize by copy with packing = none { section __DLIB_PERTHREAD }; } place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec }; place in IROM_region { readonly }; place in EROM_region { readonly section application_specific_ro }; place in IRAM_region { readwrite, block CSTACK, block PROC_STACK, block HEAP }; place in ERAM_region { readwrite section application_specific_rw };
When I try to compile the project I get the following error : Fatal Error[Lp049]: there was no reference to __iar_data_init3, but it is needed to initialize section .bss (OS_Global.o(os7m_tlv_d_837070.a) #8) .
I tried to look online for fixes but non of them seems to work.
Does anybody can help me please?
This is stuff specific to the IAR setup - so you need to go to IAR for support.
Don't IAR provide basic tutorials, examples, etc, to get you started with their product?
At https://www.iar.com/support/#!?tab=resources I see options for Articles, Videos, and Webinars
Also:
IAR ACADEMYTraining on basic and advanced level as well as customized courses.https://www.iar.com/support/iar-academy/
And don't forget the Help in the Workbench itself: