-
Notifications
You must be signed in to change notification settings - Fork 8.3k
Description
Describe the bug
We are starting to develop cpp applications based on Zephyr. But building the samples/cpp/hello_world reports "undefined reference to `_impure_ptr'" error.
To Reproduce
west build -b apollo4p_evb .\samples\cpp\hello_world\ -p
Expected behavior
No compiling error reports.
Impact
We cannot continue the development until the compiling error getting resolved.
Logs and console output
[1/125] Generating include/generated/zephyr/version.h
-- Zephyr version: 3.7.99 (C:/ambiqcodes/ambiqzephyr/zephyr), build: v3.7.0-2509-g6654c2a2f629
[120/125] Linking CXX executable zephyr\zephyr_pre0.elf
FAILED: zephyr/zephyr_pre0.elf zephyr/zephyr_pre0.map C:/ambiqcodes/ambiqzephyr/zephyr/build/zephyr/zephyr_pre0.map
cmd.exe /C "cd . && C:\ambiqcodes\radio_sw\zephyr-sdk-0.16.8\arm-zephyr-eabi\bin\arm-zephyr-eabi-g++.exe -gdwarf-4 zephyr/CMakeFiles/zephyr_pre0.dir/misc/empty_file.c.obj -o zephyr\zephyr_pre0.elf zephyr/CMakeFiles/offsets.dir/./arch/arm/core/offsets/offsets.c.obj -fuse-ld=bfd -T zephyr/linker_zephyr_pre0.cmd -Wl,-Map=C:/ambiqcodes/ambiqzephyr/zephyr/build/zephyr/zephyr_pre0.map -Wl,--whole-archive app/libapp.a zephyr/libzephyr.a
zephyr/arch/common/libarch__common.a zephyr/arch/arch/arm/core/libarch__arm__core.a zephyr/arch/arch/arm/core/cortex_m/libarch__arm__core__cortex_zephyr/arch/common/libarch__common.a zephyr/arch/arch/arm/core/libarch__arm__core.a zephyr/arch/arch/arm/core/cortex_m/libarch__arm__core__cortex_m.a zephyr/lib/libc/picolibc/liblib__libc__picolibc.a zephyr/lib/libc/common/liblib__libc__common.a zephyr/drivers/console/libdrivers__console.a
zephyr/drivers/pinctrl/libdrivers__pinctrl.a zephyr/drivers/serial/libdrivers__serial.a zephyr/drivers/timer/libdrivers__timer.a modules/hal_ambiq/mcu/apollo4p/lib..__modules__hal__ambiq__mcu__apollo4p.a -Wl,--no-whole-archive zephyr/kernel/libkernel.a -L"c:/ambiqcodes/radio_sw/zephyr-sdk-0.16.8/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/12.2.0/thumb/v7e-m/nofp" -LC:/ambiqcodes/ambiqzephyr/zephyr/build/zephyr -lgcc zephyr/arch/common/libisr_tables.a -mcpu=cortex-m4 -mthumb -mabi=aapcs -mfp16-format=ieee -mtp=soft -Wl,--gc-sections -Wl,--build-id=none -Wl,--sort-common=descending -Wl,--sort-section=alignment -Wl,-u,_OffsetAbsSyms -Wl,-u,_ConfigAbsSyms -nostdlib -static -Wl,-X -Wl,-N -Wl,--orphan-handling=warn -lstdc++ -Wl,-no-pie -DPICOLIBC_LONG_LONG_PRINTF_SCANF --specs=picolibc.specs -lc -lgcc && cmd.exe /C "cd /D C:\ambiqcodes\ambiqzephyr\zephyr\build\zephyr && C:\Tools\cmake-3.22.3-windows-x86_64\bin\cmake.exe -E true""
c:/ambiqcodes/radio_sw/zephyr-sdk-0.16.8/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/12.2.0/../../../../arm-zephyr-eabi/bin/ld.bfd.exe: c:\ambiqcodes\radio_sw\zephyr-sdk-0.16.8\arm-zephyr-eabi\bin../lib/gcc/../../picolibc/arm-zephyr-eabi/lib/thumb/v7e-m/nofp\libstdc++.a(ios_init.o): in function std::ios_base::Init::Init()': ios_init.cc:(.text._ZNSt8ios_base4InitC2Ev+0x120): undefined reference to _impure_ptr'
collect2.exe: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.
FATAL ERROR: command exited with status 1: 'C:\Tools\cmake-3.22.3-windows-x86_64\bin\cmake.EXE' --build 'C:\ambiqcodes\ambiqzephyr\zephyr\build'
Environment (please complete the following information):
- OS: Windows 11
- Toolchain: zephyr-sdk-0.16.8
- Commit SHA or Version used: 6654c2a (the latest main branch)
Additional context