Hi Erich,
When modified name by adding lib, then I tried to link, but got the following error. Could you tell me if it is related to library itself or KDS settings?
Can I change the library name like, or have to change in building environment?
Thanks,
Christie
'Invoking: Cross ARM C++ Linker'
arm-none-eabi-g++ -u _printf_float -mcpu=cortex-m4 -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 -O0 -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -g3 -T "../Project_Settings/Linker_Files/ProcessorExpert.ld" -Xlinker --gc-sections -L"../Project_Settings/Linker_Files" -L"C:\N9DS_V3.5.1\iVT\Sources" -Wl,-Map,"iVT.map" -specs=nano.specs -specs=nosys.specs -o "iVT.elf" ./Sources/Events.o ./Sources/bno055.o ./Sources/bno055_support.o ./Sources/exit.o ./Sources/main.o ./SDK/platform/utilities/src/fsl_debug_console.o ./SDK/platform/utilities/src/print_scan.o ./SDK/platform/system/src/interrupt/fsl_interrupt_manager.o ./SDK/platform/system/src/clock/MK64F12/fsl_clock_MK64F12.o ./SDK/platform/system/src/clock/fsl_clock_manager.o ./SDK/platform/system/src/clock/fsl_clock_manager_common.o ./SDK/platform/osa/src/fsl_os_abstraction_bm.o ./SDK/platform/hal/src/uart/fsl_uart_hal.o ./SDK/platform/hal/src/sim/MK64F12/fsl_sim_hal_MK64F12.o ./SDK/platform/hal/src/rtc/fsl_rtc_hal.o ./SDK/platform/hal/src/port/fsl_port_hal.o ./SDK/platform/hal/src/pit/fsl_pit_hal.o ./SDK/platform/hal/src/osc/fsl_osc_hal.o ./SDK/platform/hal/src/mcg/fsl_mcg_hal.o ./SDK/platform/hal/src/mcg/fsl_mcg_hal_modes.o ./SDK/platform/hal/src/lptmr/fsl_lptmr_hal.o ./SDK/platform/hal/src/i2c/fsl_i2c_hal.o ./SDK/platform/hal/src/gpio/fsl_gpio_hal.o ./SDK/platform/hal/src/flexcan/fsl_flexcan_hal.o ./SDK/platform/drivers/src/uart/fsl_uart_common.o ./SDK/platform/drivers/src/uart/fsl_uart_driver.o ./SDK/platform/drivers/src/rtc/fsl_rtc_common.o ./SDK/platform/drivers/src/pit/fsl_pit_common.o ./SDK/platform/drivers/src/pit/fsl_pit_driver.o ./SDK/platform/drivers/src/i2c/fsl_i2c_common.o ./SDK/platform/drivers/src/i2c/fsl_i2c_master_driver.o ./SDK/platform/drivers/src/i2c/fsl_i2c_shared_function.o ./SDK/platform/drivers/src/i2c/fsl_i2c_slave_driver.o ./SDK/platform/drivers/src/gpio/fsl_gpio_common.o ./SDK/platform/drivers/src/gpio/fsl_gpio_driver.o ./SDK/platform/drivers/src/flexcan/fsl_flexcan_common.o ./SDK/platform/drivers/src/flexcan/fsl_flexcan_driver.o ./SDK/platform/drivers/src/flash/C90TFS/drvsrc/source/CopyToRam.o ./SDK/platform/drivers/src/flash/C90TFS/drvsrc/source/DEFlashPartition.o ./SDK/platform/drivers/src/flash/C90TFS/drvsrc/source/DFlashGetProtection.o ./SDK/platform/drivers/src/flash/C90TFS/drvsrc/source/DFlashSetProtection.o ./SDK/platform/drivers/src/flash/C90TFS/drvsrc/source/EEEWrite.o ./SDK/platform/drivers/src/flash/C90TFS/drvsrc/source/EERAMGetProtection.o ./SDK/platform/drivers/src/flash/C90TFS/drvsrc/source/EERAMSetProtection.o ./SDK/platform/drivers/src/flash/C90TFS/drvsrc/source/FlashCheckSum.o ./SDK/platform/drivers/src/flash/C90TFS/drvsrc/source/FlashCommandSequence.o ./SDK/platform/drivers/src/flash/C90TFS/drvsrc/source/FlashEraseAllBlock.o ./SDK/platform/drivers/src/flash/C90TFS/drvsrc/source/FlashEraseBlock.o ./SDK/platform/drivers/src/flash/C90TFS/drvsrc/source/FlashEraseResume.o ./SDK/platform/drivers/src/flash/C90TFS/drvsrc/source/FlashEraseSector.o ./SDK/platform/drivers/src/flash/C90TFS/drvsrc/source/FlashEraseSuspend.o ./SDK/platform/drivers/src/flash/C90TFS/drvsrc/source/FlashGetSecurityState.o ./SDK/platform/drivers/src/flash/C90TFS/drvsrc/source/FlashInit.o ./SDK/platform/drivers/src/flash/C90TFS/drvsrc/source/FlashProgram.o ./SDK/platform/drivers/src/flash/C90TFS/drvsrc/source/FlashProgramCheck.o ./SDK/platform/drivers/src/flash/C90TFS/drvsrc/source/FlashProgramOnce.o ./SDK/platform/drivers/src/flash/C90TFS/drvsrc/source/FlashProgramSection.o ./SDK/platform/drivers/src/flash/C90TFS/drvsrc/source/FlashReadOnce.o ./SDK/platform/drivers/src/flash/C90TFS/drvsrc/source/FlashReadResource.o ./SDK/platform/drivers/src/flash/C90TFS/drvsrc/source/FlashSecurityBypass.o ./SDK/platform/drivers/src/flash/C90TFS/drvsrc/source/FlashVerifyAllBlock.o ./SDK/platform/drivers/src/flash/C90TFS/drvsrc/source/FlashVerifyBlock.o ./SDK/platform/drivers/src/flash/C90TFS/drvsrc/source/FlashVerifySection.o ./SDK/platform/drivers/src/flash/C90TFS/drvsrc/source/PFlashGetProtection.o ./SDK/platform/drivers/src/flash/C90TFS/drvsrc/source/PFlashSetProtection.o ./SDK/platform/drivers/src/flash/C90TFS/drvsrc/source/PFlashSwap.o ./SDK/platform/drivers/src/flash/C90TFS/drvsrc/source/PFlashSwapCtl.o ./SDK/platform/drivers/src/flash/C90TFS/drvsrc/source/SetEEEEnable.o ./SDK/platform/devices/MK64F12/startup/gcc/startup_MK64F12.o ./SDK/platform/devices/MK64F12/startup/system_MK64F12.o ./SDK/platform/devices/startup.o ./SC/System/PE_low_level_init.o ./SC/System/Peripherals_Init.o ./SC/Peripherals/FTM0_Init.o ./GC/Cpu.o ./GC/canVT.o ./GC/clockMan1.o ./GC/dbVT.o ./GC/fmVT.o ./GC/gpsVT.o ./GC/hardware_init.o ./GC/i2cVT.o ./GC/ioVT.o ./GC/osa1.o ./GC/pin_init.o ./GC/ptVT.o -liNemoEngine_MK64FN1M0VLL12
c:/fsl3/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/bin/ld.exe: warning: ../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(iNemoEngineAPI.o) uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
c:/fsl3/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/bin/ld.exe: warning: ../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(iNemo_Engine.o) uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
c:/fsl3/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/bin/ld.exe: warning: ../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(iNemo_Engine_6X.o) uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
c:/fsl3/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/bin/ld.exe: warning: ../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(iNemoEngine_9p6.o) uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
c:/fsl3/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/bin/ld.exe: warning: ../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(output_update.o) uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
c:/fsl3/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/bin/ld.exe: warning: ../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(q2dcm_eml.o) uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
c:/fsl3/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/bin/ld.exe: warning: ../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(q2ypr2_eml.o) uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
c:/fsl3/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/bin/ld.exe: warning: ../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(qinv.o) uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
c:/fsl3/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/bin/ld.exe: warning: ../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(rt_nonfinite.o) uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
c:/fsl3/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/bin/ld.exe: warning: ../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(rtGetInf.o) uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
c:/fsl3/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/bin/ld.exe: warning: ../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(rtGetNaN.o) uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
c:/fsl3/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/bin/ld.exe: warning: ../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(SpacePointAccumulate.o) uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
c:/fsl3/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/bin/ld.exe: warning: ../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(SpacePointAlgorithm.o) uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
c:/fsl3/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/bin/ld.exe: warning: ../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(SpacePointCorrection.o) uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
c:/fsl3/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/bin/ld.exe: warning: ../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(SpacePointGyroProp.o) uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
c:/fsl3/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/bin/ld.exe: warning: ../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(SpacePointGyroPropRedist.o) uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
c:/fsl3/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/bin/ld.exe: warning: ../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(SpacePointQuatDivider.o) uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
c:/fsl3/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/bin/ld.exe: warning: ../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(AsyncHeadway_initialize.o) uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
c:/fsl3/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/bin/ld.exe: warning: ../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(kalman_3gyro.o) uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
c:/fsl3/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/bin/ld.exe: warning: ../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(mean.o) uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
c:/fsl3/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/bin/ld.exe: warning: ../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(median.o) uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
c:/fsl3/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/bin/ld.exe: warning: ../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(mldivide.o) uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
c:/fsl3/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/bin/ld.exe: warning: ../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(norm_eml.o) uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
c:/fsl3/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/bin/ld.exe: warning: ../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(qmult_eml.o) uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
c:/fsl3/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/bin/ld.exe: warning: ../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(qnorm_eml.o) uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
c:/fsl3/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/bin/ld.exe: warning: ../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(repmat.o) uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
c:/fsl3/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/bin/ld.exe: warning: ../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(spMult_1.o) uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
c:/fsl3/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/bin/ld.exe: warning: ../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(std.o) uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
c:/fsl3/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/bin/ld.exe: warning: ../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(sum.o) uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
c:/fsl3/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/bin/ld.exe: warning: ../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(cross3_eml.o) uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
c:/fsl3/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/bin/ld.exe: warning: ../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(dcm2q_eml.o) uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
c:/fsl3/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/bin/ld.exe: warning: ../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(interp1q_constrain.o) uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(iNemo_Engine.o): In function `iNemo_update':
C:\Users\federico rizzardini\Desktop\Library_Builder\IAR_Lib_Maker\Libraries\iNemoEngineAll\iNemo_Engine.c:(.text+0x732): undefined reference to `__aeabi_memcpy4'
../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(iNemo_Engine_6X.o): In function `iNemo_update_6X':
C:\Users\federico rizzardini\Desktop\Library_Builder\IAR_Lib_Maker\Libraries\iNemoEngineAll\iNemo_Engine_6X.c:(.text+0x692): undefined reference to `__aeabi_memcpy4'
../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(kalman_3gyro.o): In function `m_kalman_3gyro':
(.text+0x4b4): undefined reference to `__aeabi_memset4'
../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(median.o): In function `m_median':
(.text+0x12c): undefined reference to `__aeabi_memcpy'
../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(median.o): In function `m_median':
(.text+0x164): undefined reference to `__aeabi_memcpy'
../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(spMult_1.o): In function `m_c_spMult_1':
C:\Users\federico rizzardini\Desktop\Library_Builder\IAR_Lib_Maker\Libraries\iNemoEngineAll\spMult_1.c:(.text+0x86): undefined reference to `__aeabi_memclr'
../Project_Settings/Linker_Files\libiNemoEngine_MK64FN1M0VLL12.a(spMult_1.o): In function `m_d_spMult_1':
C:\Users\federico rizzardini\Desktop\Library_Builder\IAR_Lib_Maker\Libraries\iNemoEngineAll\spMult_1.c:(.text+0x144): undefined reference to `__aeabi_memclr'
collect2.exe: error: ld returned 1 exit status
make: *** [iVT.elf] Error 1
15:02:24 Build Finished (took 16s.845ms)