(nrf52840 dongle) example code of bootloader cannot pass compile

I ran the code of blink, and wrote it on the nrf52840 dongle, the code works, but the bootloader disappear, the computer cannot detect nrf52840 dongle anymore. Then I wanted to compile the example code of bootloader file and created bootloader hex file, using jlink to upload bootloader to the dongle, however, the t code cannot pass compile, I used VS code application by the way.

Could you please give me the right bootloader code that can pass the compile?

the next are the bootloader code I used and the message on the terminal screen:

CODE:

/*
 * Copyright (c) 2018 Nordic Semiconductor ASA
 *
 * SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
 */

#include <zephyr/types.h>
#include <zephyr/kernel.h>
#include <zephyr/sys/printk.h>
#include <pm_config.h>
#include <fw_info.h>
#include <fprotect.h>
#include <bl_storage.h>
#include <bl_boot.h>
#include <bl_validation.h>
#include <nrfx_nvmc.h>

#if defined(CONFIG_HW_UNIQUE_KEY_LOAD)
#include <zephyr/init.h>
#include <hw_unique_key.h>

#define HUK_FLAG_OFFSET 0xFFC /* When this word is set, expect HUK to be written. */

int load_huk(void)
{
    if (!hw_unique_key_is_written(HUK_KEYSLOT_KDR)) {
        uint32_t huk_flag_addr = PM_HW_UNIQUE_KEY_PARTITION_ADDRESS + HUK_FLAG_OFFSET;

        if (*(uint32_t *)huk_flag_addr == 0xFFFFFFFF) {
            printk("First boot, expecting app to write HUK.\n");
            nrfx_nvmc_word_write(huk_flag_addr, 0);
            return 0;
        }
        printk("Error: Hardware Unique Key not present.\n");
        k_panic();
        return -1;

    }

    hw_unique_key_load_kdr();

    return 0;
}

SYS_INIT(load_huk, PRE_KERNEL_2, 0);
#endif


static void validate_and_boot(const struct fw_info *fw_info, uint16_t slot)
{
    printk("Attempting to boot slot %d.\r\n", slot);

    if (fw_info == NULL) {
        printk("No fw_info struct found.\r\n");
        return;
    }

    printk("Attempting to boot from address 0x%x.\n\r",
        fw_info->address);

    if (!bl_validate_firmware_local(fw_info->address,
                    fw_info)) {
        printk("Failed to validate, permanently invalidating!\n\r");
        fw_info_invalidate(fw_info);
        return;
    }

    printk("Firmware version %d\r\n", fw_info->version);

    uint16_t stored_version;
    int err = get_monotonic_version(&stored_version);

    if (err) {
        printk("Failed to read the monotonic counter!\n\r");
        printk("We assume this is due to the firmware version not being enabled.\n\r");

        /*
         * Errors in reading the firmware version are assumed to be
         * due to the firmware version not being enabled. When the
         * firmware version is disabled, no version checking should
         * be done. The version is then set to 0 as it is not permitted
         * in fwinfo and will therefore pass all version checks.
         */
        stored_version = 0;
    }

    if (fw_info->version > stored_version) {
        int err = set_monotonic_version(fw_info->version, slot);

        if (err) {
            /*
             * Errors in writing the firmware version are assumed to be
             * due to the firmware version not being enabled. When the
             * firmware version is disabled, no version updates should
             * be done and this case can be ignored.
             *
             * The body of this if-statement is intentionally empty.
             * It is left here solely for documentation purposes,
             * describing why we ignore the error.
             */
        }
    }

    bl_boot(fw_info);
}

#define BOOT_SLOT_0 0
#define BOOT_SLOT_1 1

int main(void)
{
    int err = fprotect_area(PM_B0_ADDRESS, PM_B0_SIZE);

    if (err) {
        printk("Failed to protect B0 flash, cancel startup.\n\r");
        return 0;
    }

    uint32_t s0_addr = s0_address_read();
    uint32_t s1_addr = s1_address_read();
    const struct fw_info *s0_info = fw_info_find(s0_addr);
    const struct fw_info *s1_info = fw_info_find(s1_addr);

    if (!s1_info || (s0_info->version >= s1_info->version)) {
        validate_and_boot(s0_info, BOOT_SLOT_0);
        validate_and_boot(s1_info, BOOT_SLOT_1);
    } else {
        validate_and_boot(s1_info, BOOT_SLOT_1);
        validate_and_boot(s0_info, BOOT_SLOT_0);
    }

    printk("No bootable image found. Aborting boot.\n\r");
    return 0;
}
MESSAGE ON THE TERMINAL
[96/218] Building ASM object zephyr/arch/arch/arm/core/aarch32/cortex_m/CMakeFiles/arch__arm__core__aarch32__cortex_m.dir/reset.S.obj
[97/218] Building C object zephyr/arch/arch/arm/core/aarch32/cortex_m/CMakeFiles/arch__arm__core__aarch32__cortex_m.dir/scb.c.obj
[98/218] Building C object zephyr/arch/arch/arm/core/aarch32/cortex_m/CMakeFiles/arch__arm__core__aarch32__cortex_m.dir/thread_abort.c.obj
[99/218] Linking C static library zephyr\arch\common\libarch__common.a
[100/218] Building ASM object zephyr/arch/arch/arm/core/aarch32/cortex_m/CMakeFiles/arch__arm__core__aarch32__cortex_m.dir/vector_table.S.obj
[101/218] Building C object zephyr/arch/arch/arm/core/aarch32/mpu/CMakeFiles/arch__arm__core__aarch32__mpu.dir/arm_core_mpu.c.obj
[102/218] Building C object zephyr/arch/arch/arm/core/aarch32/mpu/CMakeFiles/arch__arm__core__aarch32__mpu.dir/arm_mpu.c.obj
[103/218] Generating ../../../include/generated/libc/minimal/strerror_table.h
[104/218] Building C object zephyr/soc/arm/nordic_nrf/nrf52/CMakeFiles/soc__arm__nordic_nrf__nrf52.dir/soc.c.obj
[105/218] Building C object zephyr/soc/arm/common/cortex_m/CMakeFiles/soc__arm__common__cortex_m.dir/arm_mpu_regions.c.obj
[106/218] Building C object zephyr/boards/boards/arm/nrf52840dongle_nrf52840/CMakeFiles/boards__arm__nrf52840dongle_nrf52840.dir/board.c.obj
[107/218] Building C object zephyr/drivers/flash/CMakeFiles/drivers__flash.dir/soc_flash_nrf.c.obj
[108/218] Building C object zephyr/drivers/clock_control/CMakeFiles/drivers__clock_control.dir/clock_control_nrf.c.obj
[109/218] Building C object zephyr/drivers/gpio/CMakeFiles/drivers__gpio.dir/gpio_nrfx.c.obj
[110/218] Linking C static library app\libapp.a
[111/218] Building C object zephyr/drivers/flash/CMakeFiles/drivers__flash.dir/flash_page_layout.c.obj
[112/218] Linking C static library zephyr\arch\arch\arm\core\aarch32\libarch__arm__core__aarch32.a
[113/218] Building C object zephyr/drivers/hwinfo/CMakeFiles/drivers__hwinfo.dir/hwinfo_nrf.c.obj
[114/218] Building C object zephyr/arch/arch/arm/core/aarch32/cortex_m/CMakeFiles/arch__arm__core__aarch32__cortex_m.dir/fault.c.obj
[115/218] Building C object zephyr/drivers/hwinfo/CMakeFiles/drivers__hwinfo.dir/hwinfo_weak_impl.c.obj
[116/218] Building C object zephyr/drivers/pinctrl/CMakeFiles/drivers__pinctrl.dir/pinctrl_nrf.c.obj
[117/218] Building C object zephyr/drivers/pinctrl/CMakeFiles/drivers__pinctrl.dir/common.c.obj
[118/218] Building C object zephyr/drivers/serial/CMakeFiles/drivers__serial.dir/__/__/misc/empty_file.c.obj
[119/218] Building C object zephyr/drivers/timer/CMakeFiles/drivers__timer.dir/sys_clock_init.c.obj
[120/218] Building C object zephyr/drivers/timer/CMakeFiles/drivers__timer.dir/nrf_rtc_timer.c.obj
[121/218] Building C object modules/nrf/lib/fprotect/CMakeFiles/..__nrf__lib__fprotect.dir/fprotect_acl.c.obj
[122/218] Linking C static library zephyr\arch\arch\arm\core\aarch32\mpu\libarch__arm__core__aarch32__mpu.a
[123/218] Building C object zephyr/CMakeFiles/zephyr_pre0.dir/misc/empty_file.c.obj
[124/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdlib/strtoll.c.obj
[125/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdlib/strtol.c.obj
[126/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdlib/strtoul.c.obj
[127/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdlib/atoi.c.obj
[128/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdlib/abort.c.obj
[129/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdlib/malloc.c.obj
[130/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdlib/bsearch.c.obj
[131/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdlib/exit.c.obj
[132/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdlib/strtoull.c.obj
[133/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/string/strncasecmp.c.obj
[134/218] Linking C static library zephyr\arch\arch\arm\core\aarch32\cortex_m\libarch__arm__core__aarch32__cortex_m.a
[135/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/string/strerror.c.obj
[136/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/string/strstr.c.obj
[137/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdlib/qsort.c.obj
[138/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdout/sprintf.c.obj
[139/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/string/string.c.obj
[140/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/string/strspn.c.obj
[141/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdout/stdout_console.c.obj
[142/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/time/gmtime.c.obj
[143/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/math/sqrt.c.obj
[144/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdout/fprintf.c.obj
[145/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/math/sqrtf.c.obj
[146/218] Linking C static library zephyr\soc\arm\common\cortex_m\libsoc__arm__common__cortex_m.a
[147/218] Linking C static library zephyr\soc\arm\nordic_nrf\nrf52\libsoc__arm__nordic_nrf__nrf52.a
[148/218] Linking C static library zephyr\boards\boards\arm\nrf52840dongle_nrf52840\libboards__arm__nrf52840dongle_nrf52840.a
[149/218] Linking C static library zephyr\drivers\clock_control\libdrivers__clock_control.a
[150/218] Building C object zephyr/drivers/serial/CMakeFiles/drivers__serial.dir/uart_nrfx_uarte.c.obj
[151/218] Linking C static library zephyr\drivers\flash\libdrivers__flash.a
[152/218] Linking C static library zephyr\drivers\gpio\libdrivers__gpio.a
[153/218] Linking C static library zephyr\drivers\hwinfo\libdrivers__hwinfo.a
[154/218] Linking C static library zephyr\drivers\pinctrl\libdrivers__pinctrl.a
[155/218] Linking C static library zephyr\drivers\timer\libdrivers__timer.a
[156/218] Linking C static library modules\nrf\lib\fprotect\lib..__nrf__lib__fprotect.a
[157/218] Building C object modules/nrf/lib/fatal_error/CMakeFiles/..__nrf__lib__fatal_error.dir/fatal_error.c.obj
[158/218] Building C object modules/nrf/drivers/hw_cc310/CMakeFiles/..__nrf__drivers__hw_cc310.dir/hw_cc310.c.obj
[159/218] Building C object modules/mcuboot/boot/bootutil/zephyr/CMakeFiles/mcuboot_util.dir/C_/ncs/v2.4.0/bootloader/mcuboot/boot/bootutil/src/bootutil_public.c.obj
[160/218] Building C object modules/hal_nordic/nrfx/CMakeFiles/modules__hal_nordic__nrfx.dir/nrfx_glue.c.obj
[161/218] Building C object modules/hal_nordic/nrfx/CMakeFiles/modules__hal_nordic__nrfx.dir/C_/ncs/v2.4.0/modules/hal/nordic/nrfx/mdk/system_nrf52840.c.obj
[162/218] Building C object modules/hal_nordic/nrfx/CMakeFiles/modules__hal_nordic__nrfx.dir/C_/ncs/v2.4.0/modules/hal/nordic/nrfx/drivers/src/nrfx_clock.c.obj
[163/218] Building C object modules/hal_nordic/nrfx/CMakeFiles/modules__hal_nordic__nrfx.dir/C_/ncs/v2.4.0/modules/hal/nordic/nrfx/drivers/src/nrfx_nvmc.c.obj
[164/218] Building C object modules/hal_nordic/nrfx/CMakeFiles/modules__hal_nordic__nrfx.dir/C_/ncs/v2.4.0/modules/hal/nordic/nrfx/helpers/nrfx_flag32_allocator.c.obj
[165/218] Linking C static library zephyr\lib\libc\minimal\liblib__libc__minimal.a
[166/218] Building C object modules/hal_nordic/nrfx/CMakeFiles/modules__hal_nordic__nrfx.dir/C_/ncs/v2.4.0/modules/hal/nordic/nrfx/drivers/src/nrfx_power.c.obj
[167/218] Building C object modules/hal_nordic/nrfx/CMakeFiles/modules__hal_nordic__nrfx.dir/C_/ncs/v2.4.0/modules/hal/nordic/nrfx/drivers/src/nrfx_wdt.c.obj
[168/218] Linking C static library zephyr\drivers\serial\libdrivers__serial.a
[169/218] Building C object modules/zcbor/CMakeFiles/modules__zcbor.dir/C_/ncs/v2.4.0/modules/lib/zcbor/src/zcbor_common.c.obj
[170/218] Building C object zephyr/drivers/usb/device/CMakeFiles/drivers__usb__device.dir/usb_dc_nrfx.c.obj
[171/218] Building C object modules/zcbor/CMakeFiles/modules__zcbor.dir/C_/ncs/v2.4.0/modules/lib/zcbor/src/zcbor_encode.c.obj
[172/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/main_weak.c.obj
[173/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/banner.c.obj
[174/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/kheap.c.obj
[175/218] Linking C static library modules\nrf\lib\fatal_error\lib..__nrf__lib__fatal_error.a
[176/218] Linking C static library modules\nrf\drivers\hw_cc310\lib..__nrf__drivers__hw_cc310.a
[177/218] Linking C static library modules\mcuboot\boot\bootutil\zephyr\libmcuboot_util.a
[178/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/errno.c.obj
[179/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/device.c.obj
[180/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/idle.c.obj
[181/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/version.c.obj
[182/218] Building C object modules/hal_nordic/nrfx/CMakeFiles/modules__hal_nordic__nrfx.dir/C_/ncs/v2.4.0/modules/hal/nordic/nrfx/drivers/src/nrfx_ppi.c.obj
[183/218] Building C object modules/zcbor/CMakeFiles/modules__zcbor.dir/C_/ncs/v2.4.0/modules/lib/zcbor/src/zcbor_decode.c.obj
[184/218] Building C object modules/hal_nordic/nrfx/CMakeFiles/modules__hal_nordic__nrfx.dir/C_/ncs/v2.4.0/modules/hal/nordic/nrfx/drivers/src/nrfx_gpiote.c.obj
[185/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/init.c.obj
[186/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/fatal.c.obj
[187/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/system_work_q.c.obj
[188/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/mailbox.c.obj
[189/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/thread.c.obj
[190/218] Linking C static library zephyr\drivers\usb\device\libdrivers__usb__device.a
[191/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/stack.c.obj
[192/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/timeout.c.obj
[193/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/mem_slab.c.obj
[194/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/condvar.c.obj
[195/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/msg_q.c.obj
[196/218] Linking C static library modules\zcbor\libmodules__zcbor.a
[197/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/sem.c.obj
[198/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/queue.c.obj
[199/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/mempool.c.obj
[200/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/xip.c.obj
[201/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/work.c.obj
[202/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/timer.c.obj
[203/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/mutex.c.obj
[204/218] Building C object modules/hal_nordic/nrfx/CMakeFiles/modules__hal_nordic__nrfx.dir/C_/ncs/v2.4.0/modules/hal/nordic/nrfx/drivers/src/nrfx_usbd.c.obj
[205/218] Linking C static library modules\hal_nordic\nrfx\libmodules__hal_nordic__nrfx.a
[206/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/sched.c.obj
[207/218] Linking C static library zephyr\kernel\libkernel.a
[208/218] Linking C executable zephyr\zephyr_pre0.elf
FAILED: zephyr/zephyr_pre0.elf zephyr/zephyr_pre0.map
cmd.exe /C "cd . && C:\ncs\toolchains\31f4403e35\opt\zephyr-sdk\arm-zephyr-eabi\bin\arm-zephyr-eabi-gcc.exe -gdwarf-4 zephyr/CMakeFiles/zephyr_pre0.dir/misc/empty_file.c.obj -o zephyr\zephyr_pre0.elf -fuse-ld=bfd -Wl,-T zephyr/linker_zephyr_pre0.cmd -Wl,-Map=C:/study/HKU/graduate_design/nrf52840_dongle/dfu/build/mcuboot/zephyr/zephyr_pre0.map -Wl,--whole-archive app/libapp.a zephyr/libzephyr.a zephyr/arch/common/libarch__common.a zephyr/arch/arch/arm/core/aarch32/libarch__arm__core__aarch32.a zephyr/arch/arch/arm/core/aarch32/cortex_m/libarch__arm__core__aarch32__cortex_m.a zephyr/arch/arch/arm/core/aarch32/mpu/libarch__arm__core__aarch32__mpu.a zephyr/lib/libc/minimal/liblib__libc__minimal.a zephyr/soc/arm/common/cortex_m/libsoc__arm__common__cortex_m.a zephyr/soc/arm/nordic_nrf/nrf52/libsoc__arm__nordic_nrf__nrf52.a zephyr/boards/boards/arm/nrf52840dongle_nrf52840/libboards__arm__nrf52840dongle_nrf52840.a zephyr/drivers/usb/device/libdrivers__usb__device.a zephyr/drivers/clock_control/libdrivers__clock_control.a zephyr/drivers/flash/libdrivers__flash.a zephyr/drivers/gpio/libdrivers__gpio.a zephyr/drivers/hwinfo/libdrivers__hwinfo.a zephyr/drivers/pinctrl/libdrivers__pinctrl.a zephyr/drivers/serial/libdrivers__serial.a zephyr/drivers/timer/libdrivers__timer.a modules/nrf/lib/fprotect/lib..__nrf__lib__fprotect.a modules/nrf/lib/fatal_error/lib..__nrf__lib__fatal_error.a modules/nrf/drivers/hw_cc310/lib..__nrf__drivers__hw_cc310.a modules/mcuboot/boot/bootutil/zephyr/libmcuboot_util.a modules/hal_nordic/nrfx/libmodules__hal_nordic__nrfx.a modules/zcbor/libmodules__zcbor.a -Wl,--no-whole-archive zephyr/kernel/libkernel.a zephyr/CMakeFiles/offsets.dir/./arch/arm/core/offsets/offsets.c.obj -L"c:/ncs/toolchains/31f4403e35/opt/zephyr-sdk/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/12.2.0/thumb/v7e-m+fp/hard" -LC:/study/HKU/graduate_design/nrf52840_dongle/dfu/build/mcuboot/zephyr -lgcc zephyr/arch/common/libisr_tables.a -mcpu=cortex-m4 -mthumb -mabi=aapcs -mfpu=fpv4-sp-d16 -mfloat-abi=hard -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 -Wl,-no-pie C:/ncs/v2.4.0/nrfxlib/crypto/nrf_cc310_platform/lib/cortex-m4/hard-float/no-interrupts/libnrf_cc310_platform_0.9.17.a C:/ncs/v2.4.0/nrfxlib/crypto/nrf_cc310_bl/lib/cortex-m4/hard-float/no-interrupts/libnrf_cc310_bl_0.9.12.a && cmd.exe /C "cd /D C:\study\HKU\graduate_design\nrf52840_dongle\dfu\build\mcuboot\zephyr && C:\ncs\toolchains\31f4403e35\opt\bin\cmake.exe -E echo ""
c:/ncs/toolchains/31f4403e35/opt/zephyr-sdk/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/12.2.0/../../../../arm-zephyr-eabi/bin/ld.bfd.exe: zephyr\zephyr_pre0.elf section `text' will not fit in region `FLASH'
c:/ncs/toolchains/31f4403e35/opt/zephyr-sdk/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/12.2.0/../../../../arm-zephyr-eabi/bin/ld.bfd.exe: region `FLASH' overflowed by 9572 bytes
collect2.exe: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.
[194/215] Linking C executable zephyr\zephyr_pre0.elf

[198/215] Linking C executable zephyr\zephyr_pre1.elf

FAILED: modules/mcuboot/mcuboot_subimage-prefix/src/mcuboot_subimage-stamp/mcuboot_subimage-build mcuboot/zephyr/zephyr.hex mcuboot/zephyr/zephyr.elf
cmd.exe /C "cd /D C:\study\HKU\graduate_design\nrf52840_dongle\dfu\build\mcuboot && C:\ncs\toolchains\31f4403e35\opt\bin\cmake.exe --build . --"
[200/215] Generating linker.cmd
ninja: build stopped: subcommand failed.
FATAL ERROR: command exited with status 1: 'c:\ncs\toolchains\31f4403e35\opt\bin\cmake.EXE' --build 'c:\study\HKU\graduate_design\nrf52840_dongle\dfu\build'

* The terminal process terminated with exit code: 1.
* Terminal will be reused by tasks, press any key to close it.

* Executing task: nRF Connect: Generate config nrf52840dongle_nrf52840 for nrf52840_dongle/dfu

Building dfu
C:\WINDOWS\system32\cmd.exe /d /s /c "west build --build-dir c:\study\HKU\graduate_design\nrf52840_dongle\dfu\build c:\study\HKU\graduate_design\nrf52840_dongle\dfu --pristine --board nrf52840dongle_nrf52840 -- -DNCS_TOOLCHAIN_VERSION:STRING="NONE" -DCONF_FILE:STRING="c:/study/HKU/graduate_design/nrf52840_dongle/dfu/prj.conf""

-- west build: generating a build system
Loading Zephyr default modules (Zephyr base).
-- Application: C:/study/HKU/graduate_design/nrf52840_dongle/dfu
-- CMake version: 3.20.5
-- Found Python3: C:/ncs/toolchains/31f4403e35/opt/bin/python.exe (found suitable exact version "3.8.2") found components: Interpreter
-- Cache files will be written to: C:/ncs/v2.4.0/zephyr/.cache
-- Zephyr version: 3.3.99 (C:/ncs/v2.4.0/zephyr)
-- Found west (found suitable version "1.0.0", minimum required is "0.7.1")
-- Board: nrf52840dongle_nrf52840
-- Found host-tools: zephyr 0.16.0 (C:/ncs/toolchains/31f4403e35/opt/zephyr-sdk)
-- Found toolchain: zephyr 0.16.0 (C:/ncs/toolchains/31f4403e35/opt/zephyr-sdk)
-- Found Dtc: C:/ncs/toolchains/31f4403e35/opt/bin/dtc.exe (found suitable version "1.4.7", minimum required is "1.4.6")
-- Found BOARD.dts: C:/ncs/v2.4.0/zephyr/boards/arm/nrf52840dongle_nrf52840/nrf52840dongle_nrf52840.dts
-- Generated zephyr.dts: C:/study/HKU/graduate_design/nrf52840_dongle/dfu/build/zephyr/zephyr.dts
-- Generated devicetree_generated.h: C:/study/HKU/graduate_design/nrf52840_dongle/dfu/build/zephyr/include/generated/devicetree_generated.h
-- Including generated dts.cmake file: C:/study/HKU/graduate_design/nrf52840_dongle/dfu/build/zephyr/dts.cmake

warning: STDOUT_CONSOLE (defined at lib/libc/Kconfig:84) was assigned the value 'y' but got the
value 'n'. Check these unsatisfied dependencies: CONSOLE_HAS_DRIVER (=n). See
docs.zephyrproject.org/.../kconfig.html and/or look up
STDOUT_CONSOLE in the menuconfig/guiconfig interface. The Application Development Primer, Setting
Configuration Values, and Kconfig - Tips and Best Practices sections of the manual might be helpful
too.

Parsing C:/ncs/v2.4.0/zephyr/Kconfig
Loaded configuration 'C:/ncs/v2.4.0/zephyr/boards/arm/nrf52840dongle_nrf52840/nrf52840dongle_nrf52840_defconfig'
Merged configuration 'c:/study/HKU/graduate_design/nrf52840_dongle/dfu/prj.conf'
Configuration saved to 'C:/study/HKU/graduate_design/nrf52840_dongle/dfu/build/zephyr/.config'
Kconfig header saved to 'C:/study/HKU/graduate_design/nrf52840_dongle/dfu/build/zephyr/include/generated/autoconf.h'
-- Found GnuLd: c:/ncs/toolchains/31f4403e35/opt/zephyr-sdk/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/12.2.0/../../../../arm-zephyr-eabi/bin/ld.bfd.exe (found version "2.38")
-- The C compiler identification is GNU 12.2.0
-- The CXX compiler identification is GNU 12.2.0
-- The ASM compiler identification is GNU
-- Found assembler: C:/ncs/toolchains/31f4403e35/opt/zephyr-sdk/arm-zephyr-eabi/bin/arm-zephyr-eabi-gcc.exe
CMake Warning at C:/ncs/v2.4.0/zephyr/subsys/usb/device/CMakeLists.txt:22 (message):
CONFIG_USB_DEVICE_VID has default value 0x2FE3.

This value is only for testing and MUST be configured for USB products.


-- Found Python3: C:/ncs/toolchains/31f4403e35/opt/bin/python.exe (found version "3.8.2") found components: Interpreter

=== child image mcuboot - begin ===
loading initial cache file C:/study/HKU/graduate_design/nrf52840_dongle/dfu/build/mcuboot/child_image_preload.cmake
CMake Warning (dev) at C:/study/HKU/graduate_design/nrf52840_dongle/dfu/build/mcuboot/child_image_preload.cmake:7 (set):
Syntax error in cmake code at

C:/study/HKU/graduate_design/nrf52840_dongle/dfu/build/mcuboot/child_image_preload.cmake:7

when parsing string

c:\ncs\toolchains\31f4403e35\opt\bin\python.exe

Invalid escape sequence \3

Policy CMP0010 is not set: Bad variable reference syntax is an error. Run
"cmake --help-policy CMP0010" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
This warning is for project developers. Use -Wno-dev to suppress it.

Loading Zephyr default modules (Zephyr base).
-- Application: C:/ncs/v2.4.0/bootloader/mcuboot/boot/zephyr
-- CMake version: 3.20.5
-- Found Python3: C:/ncs/toolchains/31f4403e35/opt/bin/python.exe (found suitable exact version "3.8.2") found components: Interpreter
-- Cache files will be written to: C:/ncs/v2.4.0/zephyr/.cache
-- Zephyr version: 3.3.99 (C:/ncs/v2.4.0/zephyr)
-- Found west (found suitable version "1.0.0", minimum required is "0.7.1")
-- Board: nrf52840dongle_nrf52840
-- Found host-tools: zephyr 0.16.0 (C:/ncs/toolchains/31f4403e35/opt/zephyr-sdk)
-- Found toolchain: zephyr 0.16.0 (C:/ncs/toolchains/31f4403e35/opt/zephyr-sdk)
-- Found Dtc: C:/ncs/toolchains/31f4403e35/opt/bin/dtc.exe (found suitable version "1.4.7", minimum required is "1.4.6")
-- Found BOARD.dts: C:/ncs/v2.4.0/zephyr/boards/arm/nrf52840dongle_nrf52840/nrf52840dongle_nrf52840.dts
-- Found devicetree overlay: C:/ncs/v2.4.0/nrf/modules/mcuboot/usb.overlay
-- Generated zephyr.dts: C:/study/HKU/graduate_design/nrf52840_dongle/dfu/build/mcuboot/zephyr/zephyr.dts
-- Generated devicetree_generated.h: C:/study/HKU/graduate_design/nrf52840_dongle/dfu/build/mcuboot/zephyr/include/generated/devicetree_generated.h
-- Including generated dts.cmake file: C:/study/HKU/graduate_design/nrf52840_dongle/dfu/build/mcuboot/zephyr/dts.cmake

Parsing C:/ncs/v2.4.0/bootloader/mcuboot/boot/zephyr/Kconfig
Loaded configuration 'C:/ncs/v2.4.0/zephyr/boards/arm/nrf52840dongle_nrf52840/nrf52840dongle_nrf52840_defconfig'
Merged configuration 'C:/ncs/v2.4.0/bootloader/mcuboot/boot/zephyr/prj.conf'
Merged configuration 'C:/ncs/v2.4.0/bootloader/mcuboot/boot/zephyr/boards/nrf52840dongle_nrf52840.conf'
Merged configuration 'C:/ncs/v2.4.0/nrf/subsys/partition_manager/partition_manager_enabled.conf'
Merged configuration 'C:/study/HKU/graduate_design/nrf52840_dongle/dfu/build/mcuboot/zephyr/misc/generated/extra_kconfig_options.conf'
Configuration saved to 'C:/study/HKU/graduate_design/nrf52840_dongle/dfu/build/mcuboot/zephyr/.config'
Kconfig header saved to 'C:/study/HKU/graduate_design/nrf52840_dongle/dfu/build/mcuboot/zephyr/include/generated/autoconf.h'
warning: LOG_DEFAULT_LEVEL (defined at subsys/logging\Kconfig.filtering:13) was assigned the value
'0' but got the value ''. Check these unsatisfied dependencies: LOG (=n). See
docs.zephyrproject.org/.../kconfig.html and/or look up
LOG_DEFAULT_LEVEL in the menuconfig/guiconfig interface. The Application Development Primer, Setting
Configuration Values, and Kconfig - Tips and Best Practices sections of the manual might be helpful
too.


warning: The choice symbol LOG_MODE_MINIMAL (defined at subsys/logging\Kconfig.mode:28) was selected
(set =y), but no symbol ended up as the choice selection. See
docs.zephyrproject.org/.../kconfig.html and/or look up
LOG_MODE_MINIMAL in the menuconfig/guiconfig interface. The Application Development Primer, Setting
Configuration Values, and Kconfig - Tips and Best Practices sections of the manual might be helpful
too.

-- Found GnuLd: c:/ncs/toolchains/31f4403e35/opt/zephyr-sdk/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/12.2.0/../../../../arm-zephyr-eabi/bin/ld.bfd.exe (found version "2.38")
-- The C compiler identification is GNU 12.2.0
-- The CXX compiler identification is GNU 12.2.0
-- The ASM compiler identification is GNU
-- Found assembler: C:/ncs/toolchains/31f4403e35/opt/zephyr-sdk/arm-zephyr-eabi/bin/arm-zephyr-eabi-gcc.exe
CMake Warning at C:/ncs/v2.4.0/zephyr/subsys/usb/device/CMakeLists.txt:22 (message):
CONFIG_USB_DEVICE_VID has default value 0x2FE3.

This value is only for testing and MUST be configured for USB products.


CMake Warning at C:/ncs/v2.4.0/zephyr/subsys/usb/device/CMakeLists.txt:28 (message):
CONFIG_USB_DEVICE_PID has default value 0x100.

This value is only for testing and MUST be configured for USB products.


CMake Warning at C:/ncs/v2.4.0/nrf/lib/flash_patch/CMakeLists.txt:8 (message):


----------------------------------------------------------
--- WARNING: To maintain the integrity of secure boot, ---
--- enable CONFIG_DISABLE_FLASH_PATCH in production. ---
----------------------------------------------------------


CMake Warning at C:/ncs/v2.4.0/zephyr/CMakeLists.txt:838 (message):
No SOURCES given to Zephyr library: lib__libc__common

Excluding target from build.


MCUBoot bootloader key file: C:/ncs/v2.4.0/bootloader/mcuboot/root-ec-p256.pem
-- Configuring done
-- Generating done
-- Build files have been written to: C:/study/HKU/graduate_design/nrf52840_dongle/dfu/build/mcuboot
=== child image mcuboot - end ===

CMake Warning at C:/ncs/v2.4.0/nrf/modules/mcuboot/CMakeLists.txt:310 (message):


---------------------------------------------------------
--- WARNING: Using default MCUBoot key, it should not ---
--- be used for production. ---
---------------------------------------------------------




CMake Warning at C:/ncs/v2.4.0/zephyr/CMakeLists.txt:838 (message):
No SOURCES given to Zephyr library: lib__libc__common

Excluding target from build.


-- Configuring done
-- Generating done
-- Build files have been written to: C:/study/HKU/graduate_design/nrf52840_dongle/dfu/build
-- west build: building application
[1/215] Generating include/generated/version.h
-- Zephyr version: 3.3.99 (C:/ncs/v2.4.0/zephyr), build: v3.3.99-ncs1
[2/215] Creating directories for 'mcuboot_subimage'
[3/215] No download step for 'mcuboot_subimage'
[4/215] No update step for 'mcuboot_subimage'
[5/215] No patch step for 'mcuboot_subimage'
[6/215] No configure step for 'mcuboot_subimage'
[6/215] Performing build step for 'mcuboot_subimage'
[1/218] Generating include/generated/version.h
-- Zephyr version: 3.3.99 (C:/ncs/v2.4.0/zephyr), build: v3.3.99-ncs1
[2/218] Generating misc/generated/syscalls.json, misc/generated/struct_tags.json
[3/218] Generating include/generated/syscall_dispatch.c, include/generated/syscall_list.h
[4/218] Generating include/generated/driver-validation.h
[5/218] Generating include/generated/kobj-types-enum.h, include/generated/otype-to-str.h, include/generated/otype-to-size.h
[6/218] Building C object zephyr/CMakeFiles/offsets.dir/arch/arm/core/offsets/offsets.c.obj
[7/218] Generating include/generated/offsets.h
[8/218] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/cbprintf.c.obj
[9/218] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/assert.c.obj
[10/218] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/ring_buffer.c.obj
[11/218] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/reboot.c.obj
[12/218] Building C object zephyr/CMakeFiles/zephyr.dir/misc/generated/configs.c.obj
[13/218] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/notify.c.obj
[14/218] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/crc16_sw.c.obj
[15/218] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/crc32c_sw.c.obj
[16/218] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/crc8_sw.c.obj
[17/218] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/crc32_sw.c.obj
[18/218] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/cbprintf_nano.c.obj
[19/218] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/crc7_sw.c.obj
[20/218] Building C object zephyr/CMakeFiles/zephyr.dir/subsys/usb/device/usb_descriptor.c.obj
[21/218] Building C object zephyr/CMakeFiles/zephyr.dir/subsys/usb/device/usb_work_q.c.obj
[22/218] Building C object zephyr/CMakeFiles/zephyr.dir/subsys/usb/device/usb_transfer.c.obj
[23/218] Building C object zephyr/CMakeFiles/zephyr.dir/soc/arm/nordic_nrf/validate_base_addresses.c.obj
[24/218] Building C object zephyr/CMakeFiles/zephyr.dir/subsys/storage/flash_map/flash_map.c.obj
[25/218] Building ASM object zephyr/CMakeFiles/zephyr.dir/soc/arm/nordic_nrf/common/soc_nrf_common.S.obj
[26/218] Building C object zephyr/CMakeFiles/zephyr.dir/soc/arm/nordic_nrf/validate_enabled_instances.c.obj
[27/218] Building C object zephyr/CMakeFiles/zephyr.dir/subsys/tracing/tracing_none.c.obj
[28/218] Building C object zephyr/CMakeFiles/zephyr.dir/subsys/storage/flash_map/flash_map_layout.c.obj
[29/218] Building C object zephyr/CMakeFiles/zephyr.dir/C_/ncs/v2.4.0/nrfxlib/crypto/nrf_cc310_platform/src/nrf_cc3xx_platform_abort_zephyr.c.obj
[30/218] Building C object zephyr/CMakeFiles/zephyr.dir/C_/ncs/v2.4.0/nrfxlib/crypto/nrf_cc310_platform/src/nrf_cc3xx_platform_mutex_zephyr.c.obj
[31/218] Building C object zephyr/CMakeFiles/zephyr.dir/C_/ncs/v2.4.0/bootloader/mcuboot/boot/zephyr/serial_adapter.c.obj
[32/218] Building C object zephyr/CMakeFiles/zephyr.dir/C_/ncs/v2.4.0/nrf/subsys/partition_manager/flash_map_partition_manager.c.obj
[33/218] Building C object zephyr/CMakeFiles/zephyr.dir/C_/ncs/v2.4.0/bootloader/mcuboot/boot/boot_serial/src/serial_recovery_cbor.c.obj
[34/218] Building C object zephyr/CMakeFiles/zephyr.dir/C_/ncs/v2.4.0/bootloader/mcuboot/boot/boot_serial/src/boot_serial.c.obj
[35/218] Generating linker_zephyr_pre1.cmd
[36/218] Generating zephyr/autogen-pubkey.c
[37/218] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/cbprintf_packaged.c.obj
[38/218] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/fdtable.c.obj
[39/218] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/base64.c.obj
[40/218] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/dec.c.obj
[41/218] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/heap-validate.c.obj
[42/218] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/bitarray.c.obj
[43/218] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/multi_heap.c.obj
[44/218] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/onoff.c.obj
[45/218] Building C object zephyr/CMakeFiles/zephyr.dir/subsys/usb/device/class/cdc_acm.c.obj
[46/218] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/rb.c.obj
[47/218] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/printk.c.obj
[48/218] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/thread_entry.c.obj
[49/218] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/sem.c.obj
[50/218] Building C object zephyr/CMakeFiles/zephyr.dir/subsys/usb/device/usb_device.c.obj
[51/218] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/hex.c.obj
[52/218] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/timeutil.c.obj
[53/218] Generating linker_zephyr_pre0.cmd
[54/218] Building C object zephyr/arch/common/CMakeFiles/isr_tables.dir/isr_tables.c.obj
[55/218] Building C object zephyr/arch/common/CMakeFiles/arch__common.dir/sw_isr_common.c.obj
[56/218] Building ASM object zephyr/arch/arch/arm/core/aarch32/CMakeFiles/arch__arm__core__aarch32.dir/cpu_idle.S.obj
[57/218] Building C object CMakeFiles/app.dir/main.c.obj
[58/218] Building C object CMakeFiles/app.dir/flash_map_extended.c.obj
[59/218] Building C object CMakeFiles/app.dir/os.c.obj
[60/218] Building C object CMakeFiles/app.dir/keys.c.obj
[61/218] Building C object CMakeFiles/app.dir/C_/ncs/v2.4.0/bootloader/mcuboot/boot/bootutil/src/image_validate.c.obj
[62/218] Building C object CMakeFiles/app.dir/C_/ncs/v2.4.0/bootloader/mcuboot/boot/bootutil/src/tlv.c.obj
[63/218] Building C object CMakeFiles/app.dir/C_/ncs/v2.4.0/bootloader/mcuboot/boot/bootutil/src/image_rsa.c.obj
[64/218] Building C object CMakeFiles/app.dir/C_/ncs/v2.4.0/bootloader/mcuboot/boot/bootutil/src/encrypted.c.obj
[65/218] Building C object CMakeFiles/app.dir/C_/ncs/v2.4.0/bootloader/mcuboot/boot/bootutil/src/image_ec256.c.obj
[66/218] Building C object CMakeFiles/app.dir/C_/ncs/v2.4.0/bootloader/mcuboot/boot/bootutil/src/caps.c.obj
[67/218] Building C object CMakeFiles/app.dir/C_/ncs/v2.4.0/bootloader/mcuboot/boot/bootutil/src/bootutil_misc.c.obj
[68/218] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/heap.c.obj
[69/218] Building C object CMakeFiles/app.dir/C_/ncs/v2.4.0/bootloader/mcuboot/boot/bootutil/src/image_ed25519.c.obj
[70/218] Building C object CMakeFiles/app.dir/C_/ncs/v2.4.0/bootloader/mcuboot/boot/bootutil/src/swap_move.c.obj
[71/218] Building C object CMakeFiles/app.dir/C_/ncs/v2.4.0/bootloader/mcuboot/boot/bootutil/src/fault_injection_hardening.c.obj
[72/218] Building C object CMakeFiles/app.dir/C_/ncs/v2.4.0/bootloader/mcuboot/boot/bootutil/src/swap_scratch.c.obj
[73/218] Building C object CMakeFiles/app.dir/C_/ncs/v2.4.0/bootloader/mcuboot/boot/bootutil/src/swap_misc.c.obj
[74/218] Building C object CMakeFiles/app.dir/C_/ncs/v2.4.0/bootloader/mcuboot/boot/bootutil/src/loader.c.obj
[75/218] Building C object CMakeFiles/app.dir/arm_cleanup.c.obj
[76/218] Building C object CMakeFiles/app.dir/C_/ncs/v2.4.0/bootloader/mcuboot/ext/mbedtls-asn1/src/platform_util.c.obj
[77/218] Building C object CMakeFiles/app.dir/C_/ncs/v2.4.0/bootloader/mcuboot/ext/mbedtls-asn1/src/asn1parse.c.obj
[78/218] Building C object CMakeFiles/app.dir/C_/ncs/v2.4.0/bootloader/mcuboot/ext/nrf/cc310_glue.c.obj
[79/218] Building C object CMakeFiles/app.dir/zephyr/autogen-pubkey.c.obj
[80/218] Building C object CMakeFiles/app.dir/nrf_cleanup.c.obj
[81/218] Linking C static library zephyr\arch\common\libisr_tables.a
[82/218] Building C object zephyr/arch/arch/arm/core/aarch32/CMakeFiles/arch__arm__core__aarch32.dir/irq_manage.c.obj
[83/218] Building C object zephyr/arch/arch/arm/core/aarch32/CMakeFiles/arch__arm__core__aarch32.dir/fatal.c.obj
[84/218] Building C object zephyr/arch/arch/arm/core/aarch32/CMakeFiles/arch__arm__core__aarch32.dir/nmi.c.obj
[85/218] Building C object zephyr/arch/arch/arm/core/aarch32/CMakeFiles/arch__arm__core__aarch32.dir/prep_c.c.obj
[86/218] Building ASM object zephyr/arch/arch/arm/core/aarch32/CMakeFiles/arch__arm__core__aarch32.dir/nmi_on_reset.S.obj
[87/218] Building C object zephyr/arch/arch/arm/core/aarch32/CMakeFiles/arch__arm__core__aarch32.dir/swap.c.obj
[88/218] Building ASM object zephyr/arch/arch/arm/core/aarch32/CMakeFiles/arch__arm__core__aarch32.dir/swap_helper.S.obj
[89/218] Building ASM object zephyr/arch/arch/arm/core/aarch32/CMakeFiles/arch__arm__core__aarch32.dir/isr_wrapper.S.obj
[90/218] Building ASM object zephyr/arch/arch/arm/core/aarch32/cortex_m/CMakeFiles/arch__arm__core__aarch32__cortex_m.dir/reset.S.obj
[91/218] Building C object zephyr/arch/arch/arm/core/aarch32/CMakeFiles/arch__arm__core__aarch32.dir/thread.c.obj
[92/218] Building C object zephyr/arch/arch/arm/core/aarch32/cortex_m/CMakeFiles/arch__arm__core__aarch32__cortex_m.dir/irq_init.c.obj
[93/218] Building ASM object zephyr/arch/arch/arm/core/aarch32/cortex_m/CMakeFiles/arch__arm__core__aarch32__cortex_m.dir/exc_exit.S.obj
[94/218] Linking C static library zephyr\libzephyr.a
[95/218] Building C object zephyr/boards/boards/arm/nrf52840dongle_nrf52840/CMakeFiles/boards__arm__nrf52840dongle_nrf52840.dir/board.c.obj
[96/218] Building C object zephyr/arch/arch/arm/core/aarch32/mpu/CMakeFiles/arch__arm__core__aarch32__mpu.dir/arm_core_mpu.c.obj
[97/218] Building ASM object zephyr/arch/arch/arm/core/aarch32/cortex_m/CMakeFiles/arch__arm__core__aarch32__cortex_m.dir/vector_table.S.obj
[98/218] Building C object zephyr/soc/arm/nordic_nrf/nrf52/CMakeFiles/soc__arm__nordic_nrf__nrf52.dir/soc.c.obj
[99/218] Building C object zephyr/arch/arch/arm/core/aarch32/cortex_m/CMakeFiles/arch__arm__core__aarch32__cortex_m.dir/scb.c.obj
[100/218] Building ASM object zephyr/arch/arch/arm/core/aarch32/cortex_m/CMakeFiles/arch__arm__core__aarch32__cortex_m.dir/fault_s.S.obj
[101/218] Building C object zephyr/arch/arch/arm/core/aarch32/mpu/CMakeFiles/arch__arm__core__aarch32__mpu.dir/arm_mpu.c.obj
[102/218] Building C object zephyr/arch/arch/arm/core/aarch32/cortex_m/CMakeFiles/arch__arm__core__aarch32__cortex_m.dir/thread_abort.c.obj
[103/218] Building C object zephyr/arch/arch/arm/core/aarch32/cortex_m/CMakeFiles/arch__arm__core__aarch32__cortex_m.dir/fpu.c.obj
[104/218] Building C object zephyr/drivers/clock_control/CMakeFiles/drivers__clock_control.dir/clock_control_nrf.c.obj
[105/218] Generating ../../../include/generated/libc/minimal/strerror_table.h
[106/218] Linking C static library zephyr\soc\arm\nordic_nrf\nrf52\libsoc__arm__nordic_nrf__nrf52.a
[107/218] Building C object zephyr/drivers/flash/CMakeFiles/drivers__flash.dir/soc_flash_nrf.c.obj
[108/218] Building C object zephyr/drivers/pinctrl/CMakeFiles/drivers__pinctrl.dir/pinctrl_nrf.c.obj
[109/218] Building C object zephyr/drivers/pinctrl/CMakeFiles/drivers__pinctrl.dir/common.c.obj
[110/218] Building C object zephyr/drivers/hwinfo/CMakeFiles/drivers__hwinfo.dir/hwinfo_nrf.c.obj
[111/218] Building C object modules/nrf/lib/fatal_error/CMakeFiles/..__nrf__lib__fatal_error.dir/fatal_error.c.obj
[112/218] Building C object zephyr/drivers/flash/CMakeFiles/drivers__flash.dir/flash_page_layout.c.obj
[113/218] Building C object zephyr/arch/arch/arm/core/aarch32/cortex_m/CMakeFiles/arch__arm__core__aarch32__cortex_m.dir/fault.c.obj
[114/218] Linking C static library zephyr\arch\arch\arm\core\aarch32\mpu\libarch__arm__core__aarch32__mpu.a
[115/218] Linking C static library app\libapp.a
[116/218] Building C object zephyr/soc/arm/common/cortex_m/CMakeFiles/soc__arm__common__cortex_m.dir/arm_mpu_regions.c.obj
[117/218] Building C object zephyr/drivers/gpio/CMakeFiles/drivers__gpio.dir/gpio_nrfx.c.obj
[118/218] Building C object zephyr/drivers/timer/CMakeFiles/drivers__timer.dir/sys_clock_init.c.obj
[119/218] Linking C static library zephyr\arch\common\libarch__common.a
[120/218] Linking C static library zephyr\arch\arch\arm\core\aarch32\libarch__arm__core__aarch32.a
[121/218] Linking C static library zephyr\drivers\clock_control\libdrivers__clock_control.a
[122/218] Building C object zephyr/CMakeFiles/zephyr_pre0.dir/misc/empty_file.c.obj
[123/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdlib/strtol.c.obj
[124/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdlib/strtoul.c.obj
[125/218] Linking C static library zephyr\boards\boards\arm\nrf52840dongle_nrf52840\libboards__arm__nrf52840dongle_nrf52840.a
[126/218] Building C object zephyr/drivers/hwinfo/CMakeFiles/drivers__hwinfo.dir/hwinfo_weak_impl.c.obj
[127/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdlib/atoi.c.obj
[128/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdlib/strtoll.c.obj
[129/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdlib/abort.c.obj
[130/218] Building C object zephyr/drivers/serial/CMakeFiles/drivers__serial.dir/uart_nrfx_uarte.c.obj
[131/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdlib/strtoull.c.obj
[132/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdlib/bsearch.c.obj
[133/218] Linking C static library zephyr\arch\arch\arm\core\aarch32\cortex_m\libarch__arm__core__aarch32__cortex_m.a
[134/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdlib/exit.c.obj
[135/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdlib/malloc.c.obj
[136/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/string/strerror.c.obj
[137/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/string/strstr.c.obj
[138/218] Building C object zephyr/drivers/timer/CMakeFiles/drivers__timer.dir/nrf_rtc_timer.c.obj
[139/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/string/strncasecmp.c.obj
[140/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdlib/qsort.c.obj
[141/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/string/strspn.c.obj
[142/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdout/sprintf.c.obj
[143/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/string/string.c.obj
[144/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdout/stdout_console.c.obj
[145/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/math/sqrtf.c.obj
[146/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdout/fprintf.c.obj
[147/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/math/sqrt.c.obj
[148/218] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/time/gmtime.c.obj
[149/218] Building C object zephyr/drivers/usb/device/CMakeFiles/drivers__usb__device.dir/usb_dc_nrfx.c.obj
[150/218] Linking C static library zephyr\soc\arm\common\cortex_m\libsoc__arm__common__cortex_m.a
[151/218] Linking C static library modules\nrf\lib\fatal_error\lib..__nrf__lib__fatal_error.a
[152/218] Linking C static library zephyr\drivers\gpio\libdrivers__gpio.a
[153/218] Linking C static library zephyr\drivers\flash\libdrivers__flash.a
[154/218] Linking C static library zephyr\drivers\hwinfo\libdrivers__hwinfo.a
[155/218] Linking C static library zephyr\drivers\pinctrl\libdrivers__pinctrl.a
[156/218] Building C object zephyr/drivers/serial/CMakeFiles/drivers__serial.dir/__/__/misc/empty_file.c.obj
[157/218] Building C object modules/nrf/lib/fprotect/CMakeFiles/..__nrf__lib__fprotect.dir/fprotect_acl.c.obj
[158/218] Building C object modules/zcbor/CMakeFiles/modules__zcbor.dir/C_/ncs/v2.4.0/modules/lib/zcbor/src/zcbor_common.c.obj
[159/218] Building C object modules/nrf/drivers/hw_cc310/CMakeFiles/..__nrf__drivers__hw_cc310.dir/hw_cc310.c.obj
[160/218] Linking C static library zephyr\drivers\timer\libdrivers__timer.a
[161/218] Building C object modules/mcuboot/boot/bootutil/zephyr/CMakeFiles/mcuboot_util.dir/C_/ncs/v2.4.0/bootloader/mcuboot/boot/bootutil/src/bootutil_public.c.obj
[162/218] Building C object modules/hal_nordic/nrfx/CMakeFiles/modules__hal_nordic__nrfx.dir/nrfx_glue.c.obj
[163/218] Building C object modules/hal_nordic/nrfx/CMakeFiles/modules__hal_nordic__nrfx.dir/C_/ncs/v2.4.0/modules/hal/nordic/nrfx/mdk/system_nrf52840.c.obj
[164/218] Building C object modules/hal_nordic/nrfx/CMakeFiles/modules__hal_nordic__nrfx.dir/C_/ncs/v2.4.0/modules/hal/nordic/nrfx/helpers/nrfx_flag32_allocator.c.obj
[165/218] Building C object modules/hal_nordic/nrfx/CMakeFiles/modules__hal_nordic__nrfx.dir/C_/ncs/v2.4.0/modules/hal/nordic/nrfx/drivers/src/nrfx_clock.c.obj
[166/218] Building C object modules/hal_nordic/nrfx/CMakeFiles/modules__hal_nordic__nrfx.dir/C_/ncs/v2.4.0/modules/hal/nordic/nrfx/drivers/src/nrfx_nvmc.c.obj
[167/218] Building C object modules/hal_nordic/nrfx/CMakeFiles/modules__hal_nordic__nrfx.dir/C_/ncs/v2.4.0/modules/hal/nordic/nrfx/drivers/src/nrfx_wdt.c.obj
[168/218] Linking C static library zephyr\lib\libc\minimal\liblib__libc__minimal.a
[169/218] Linking C static library zephyr\drivers\usb\device\libdrivers__usb__device.a
[170/218] Building C object modules/hal_nordic/nrfx/CMakeFiles/modules__hal_nordic__nrfx.dir/C_/ncs/v2.4.0/modules/hal/nordic/nrfx/drivers/src/nrfx_power.c.obj
[171/218] Building C object modules/zcbor/CMakeFiles/modules__zcbor.dir/C_/ncs/v2.4.0/modules/lib/zcbor/src/zcbor_encode.c.obj
[172/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/banner.c.obj
[173/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/main_weak.c.obj
[174/218] Linking C static library zephyr\drivers\serial\libdrivers__serial.a
[175/218] Linking C static library modules\nrf\lib\fprotect\lib..__nrf__lib__fprotect.a
[176/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/kheap.c.obj
[177/218] Linking C static library modules\nrf\drivers\hw_cc310\lib..__nrf__drivers__hw_cc310.a
[178/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/errno.c.obj
[179/218] Linking C static library modules\mcuboot\boot\bootutil\zephyr\libmcuboot_util.a
[180/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/init.c.obj
[181/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/fatal.c.obj
[182/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/device.c.obj
[183/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/idle.c.obj
[184/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/mem_slab.c.obj
[185/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/mailbox.c.obj
[186/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/version.c.obj
[187/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/system_work_q.c.obj
[188/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/sem.c.obj
[189/218] Building C object modules/zcbor/CMakeFiles/modules__zcbor.dir/C_/ncs/v2.4.0/modules/lib/zcbor/src/zcbor_decode.c.obj
[190/218] Building C object modules/hal_nordic/nrfx/CMakeFiles/modules__hal_nordic__nrfx.dir/C_/ncs/v2.4.0/modules/hal/nordic/nrfx/drivers/src/nrfx_gpiote.c.obj
[191/218] Building C object modules/hal_nordic/nrfx/CMakeFiles/modules__hal_nordic__nrfx.dir/C_/ncs/v2.4.0/modules/hal/nordic/nrfx/drivers/src/nrfx_ppi.c.obj
[192/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/msg_q.c.obj
[193/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/thread.c.obj
[194/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/queue.c.obj
[195/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/stack.c.obj
[196/218] Linking C static library modules\zcbor\libmodules__zcbor.a
[197/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/xip.c.obj
[198/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/condvar.c.obj
[199/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/mempool.c.obj
[200/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/timer.c.obj
[201/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/mutex.c.obj
[202/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/timeout.c.obj
[203/218] Building C object modules/hal_nordic/nrfx/CMakeFiles/modules__hal_nordic__nrfx.dir/C_/ncs/v2.4.0/modules/hal/nordic/nrfx/drivers/src/nrfx_usbd.c.obj
[204/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/work.c.obj
[205/218] Linking C static library modules\hal_nordic\nrfx\libmodules__hal_nordic__nrfx.a
[206/218] Building C object zephyr/kernel/CMakeFiles/kernel.dir/sched.c.obj
[207/218] Linking C static library zephyr\kernel\libkernel.a
[208/218] Linking C executable zephyr\zephyr_pre0.elf
FAILED: zephyr/zephyr_pre0.elf zephyr/zephyr_pre0.map
cmd.exe /C "cd . && C:\ncs\toolchains\31f4403e35\opt\zephyr-sdk\arm-zephyr-eabi\bin\arm-zephyr-eabi-gcc.exe -gdwarf-4 zephyr/CMakeFiles/zephyr_pre0.dir/misc/empty_file.c.obj -o zephyr\zephyr_pre0.elf -fuse-ld=bfd -Wl,-T zephyr/linker_zephyr_pre0.cmd -Wl,-Map=C:/study/HKU/graduate_design/nrf52840_dongle/dfu/build/mcuboot/zephyr/zephyr_pre0.map -Wl,--whole-archive app/libapp.a zephyr/libzephyr.a zephyr/arch/common/libarch__common.a zephyr/arch/arch/arm/core/aarch32/libarch__arm__core__aarch32.a zephyr/arch/arch/arm/core/aarch32/cortex_m/libarch__arm__core__aarch32__cortex_m.a zephyr/arch/arch/arm/core/aarch32/mpu/libarch__arm__core__aarch32__mpu.a zephyr/lib/libc/minimal/liblib__libc__minimal.a zephyr/soc/arm/common/cortex_m/libsoc__arm__common__cortex_m.a zephyr/soc/arm/nordic_nrf/nrf52/libsoc__arm__nordic_nrf__nrf52.a zephyr/boards/boards/arm/nrf52840dongle_nrf52840/libboards__arm__nrf52840dongle_nrf52840.a zephyr/drivers/usb/device/libdrivers__usb__device.a zephyr/drivers/clock_control/libdrivers__clock_control.a zephyr/drivers/flash/libdrivers__flash.a zephyr/drivers/gpio/libdrivers__gpio.a zephyr/drivers/hwinfo/libdrivers__hwinfo.a zephyr/drivers/pinctrl/libdrivers__pinctrl.a zephyr/drivers/serial/libdrivers__serial.a zephyr/drivers/timer/libdrivers__timer.a modules/nrf/lib/fprotect/lib..__nrf__lib__fprotect.a modules/nrf/lib/fatal_error/lib..__nrf__lib__fatal_error.a modules/nrf/drivers/hw_cc310/lib..__nrf__drivers__hw_cc310.a modules/mcuboot/boot/bootutil/zephyr/libmcuboot_util.a modules/hal_nordic/nrfx/libmodules__hal_nordic__nrfx.a modules/zcbor/libmodules__zcbor.a -Wl,--no-whole-archive zephyr/kernel/libkernel.a zephyr/CMakeFiles/offsets.dir/./arch/arm/core/offsets/offsets.c.obj -L"c:/ncs/toolchains/31f4403e35/opt/zephyr-sdk/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/12.2.0/thumb/v7e-m+fp/hard" -LC:/study/HKU/graduate_design/nrf52840_dongle/dfu/build/mcuboot/zephyr -lgcc zephyr/arch/common/libisr_tables.a -mcpu=cortex-m4 -mthumb -mabi=aapcs -mfpu=fpv4-sp-d16 -mfloat-abi=hard -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 -Wl,-no-pie C:/ncs/v2.4.0/nrfxlib/crypto/nrf_cc310_platform/lib/cortex-m4/hard-float/no-interrupts/libnrf_cc310_platform_0.9.17.a C:/ncs/v2.4.0/nrfxlib/crypto/nrf_cc310_bl/lib/cortex-m4/hard-float/no-interrupts/libnrf_cc310_bl_0.9.12.a && cmd.exe /C "cd /D C:\study\HKU\graduate_design\nrf52840_dongle\dfu\build\mcuboot\zephyr && C:\ncs\toolchains\31f4403e35\opt\bin\cmake.exe -E echo ""
c:/ncs/toolchains/31f4403e35/opt/zephyr-sdk/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/12.2.0/../../../../arm-zephyr-eabi/bin/ld.bfd.exe: zephyr\zephyr_pre0.elf section `text' will not fit in region `FLASH'
c:/ncs/toolchains/31f4403e35/opt/zephyr-sdk/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/12.2.0/../../../../arm-zephyr-eabi/bin/ld.bfd.exe: region `FLASH' overflowed by 9572 bytes
collect2.exe: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.
[194/215] Linking C executable zephyr\zephyr_pre0.elf

[195/215] Generating dev_handles.c
FAILED: modules/mcuboot/mcuboot_subimage-prefix/src/mcuboot_subimage-stamp/mcuboot_subimage-build mcuboot/zephyr/zephyr.hex mcuboot/zephyr/zephyr.elf
cmd.exe /C "cd /D C:\study\HKU\graduate_design\nrf52840_dongle\dfu\build\mcuboot && C:\ncs\toolchains\31f4403e35\opt\bin\cmake.exe --build . --"
[197/215] Building C object zephyr/CMakeFiles/zephyr_pre1.dir/misc/empty_file.c.obj
[198/215] Building C object zephyr/CMakeFiles/zephyr_pre1.dir/dev_handles.c.obj
ninja: build stopped: subcommand failed.
FATAL ERROR: command exited with status 1: 'c:\ncs\toolchains\31f4403e35\opt\bin\cmake.EXE' --build 'c:\study\HKU\graduate_design\nrf52840_dongle\dfu\build'

* The terminal process terminated with exit code: 1.
* Terminal will be reused by tasks, press any key to close it.

* Executing task: nRF Connect: Build: bootloader/build (active)

Building bootloader
C:\WINDOWS\system32\cmd.exe /d /s /c "west build --build-dir c:\study\HKU\graduate_design\nrf52840_dongle\bootloader\build c:\study\HKU\graduate_design\nrf52840_dongle\bootloader"

[1/16] Linking C static library zephyr\drivers\usb\device\libdrivers__usb__device.a
[2/16] Linking C static library modules\hal_nordic\nrfx\libmodules__hal_nordic__nrfx.a
[3/16] Linking C static library zephyr\kernel\libkernel.a
[4/16] Building C object zephyr/CMakeFiles/zephyr.dir/subsys/usb/device/class/cdc_acm.c.obj
FAILED: zephyr/CMakeFiles/zephyr.dir/subsys/usb/device/class/cdc_acm.c.obj
C:\ncs\toolchains\31f4403e35\opt\zephyr-sdk\arm-zephyr-eabi\bin\arm-zephyr-eabi-gcc.exe -DEXT_API_MAGIC=0x281ee6de,0xb845acea,13314 -DFIRMWARE_INFO_MAGIC=0x281ee6de,0x8fcebb4c,13314 -DKERNEL -DNRF52840_XXAA -DUSE_PARTITION_MANAGER=0 -DVALIDATION_INFO_MAGIC=0x281ee6de,0x86518483,78850 -DVALIDATION_POINTER_MAGIC=0x281ee6de,0x6919b47e,78850 -D__PROGRAM_START -D__ZEPHYR__=1 -IC:/ncs/v2.4.0/zephyr/kernel/include -IC:/ncs/v2.4.0/zephyr/arch/arm/include -IC:/ncs/v2.4.0/zephyr/include -Izephyr/include/generated -IC:/ncs/v2.4.0/zephyr/soc/arm/nordic_nrf/nrf52 -IC:/ncs/v2.4.0/zephyr/soc/arm/nordic_nrf/common/. -IC:/ncs/v2.4.0/zephyr/subsys/usb/device -IC:/ncs/v2.4.0/nrf/include -IC:/ncs/v2.4.0/nrf/subsys/bootloader/include -IC:/ncs/v2.4.0/nrf/subsys/bootloader/include/dummy_values -IC:/ncs/v2.4.0/nrf/tests/include -IC:/ncs/v2.4.0/modules/hal/cmsis/CMSIS/Core/Include -IC:/ncs/v2.4.0/modules/hal/nordic/nrfx -IC:/ncs/v2.4.0/modules/hal/nordic/nrfx/drivers/include -IC:/ncs/v2.4.0/modules/hal/nordic/nrfx/mdk -IC:/ncs/v2.4.0/zephyr/modules/hal_nordic/nrfx/. -IC:/ncs/v2.4.0/nrfxlib/crypto/nrf_oberon/include -IC:/ncs/v2.4.0/nrfxlib/crypto/nrf_cc310_bl/include -isystem C:/ncs/v2.4.0/zephyr/lib/libc/minimal/include -isystem c:/ncs/toolchains/31f4403e35/opt/zephyr-sdk/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/12.2.0/include -isystem c:/ncs/toolchains/31f4403e35/opt/zephyr-sdk/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/12.2.0/include-fixed -isystem C:/ncs/v2.4.0/nrfxlib/crypto/nrf_cc310_platform/include -fno-strict-aliasing -Os -imacros C:/study/HKU/graduate_design/nrf52840_dongle/bootloader/build/zephyr/include/generated/autoconf.h -ffreestanding -fno-common -g -gdwarf-4 -fdiagnostics-color=always -mcpu=cortex-m4 -mthumb -mabi=aapcs -mfpu=fpv4-sp-d16 -mfloat-abi=hard --sysroot=C:/ncs/toolchains/31f4403e35/opt/zephyr-sdk/arm-zephyr-eabi/arm-zephyr-eabi -imacros C:/ncs/v2.4.0/zephyr/include/zephyr/toolchain/zephyr_stdint.h -Wall -Wformat -Wformat-security -Wno-format-zero-length -Wno-pointer-sign -Wpointer-arith -Wexpansion-to-defined -Wno-unused-but-set-variable -Werror=implicit-int -fno-pic -fno-pie -fno-asynchronous-unwind-tables -fno-reorder-functions --param=min-pagesize=0 -fno-defer-pop -fmacro-prefix-map=C:/study/HKU/graduate_design/nrf52840_dongle/bootloader=CMAKE_SOURCE_DIR -fmacro-prefix-map=C:/ncs/v2.4.0/zephyr=ZEPHYR_BASE -fmacro-prefix-map=C:/ncs/v2.4.0=WEST_TOPDIR -ffunction-sections -fdata-sections -std=c99 -nostdinc -MD -MT zephyr/CMakeFiles/zephyr.dir/subsys/usb/device/class/cdc_acm.c.obj -MF zephyr\CMakeFiles\zephyr.dir\subsys\usb\device\class\cdc_acm.c.obj.d -o zephyr/CMakeFiles/zephyr.dir/subsys/usb/device/class/cdc_acm.c.obj -c C:/ncs/v2.4.0/zephyr/subsys/usb/device/class/cdc_acm.c
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:53:2: error: #error "CONFIG_UART_INTERRUPT_DRIVEN must be set for CDC ACM driver"
53 | #error "CONFIG_UART_INTERRUPT_DRIVEN must be set for CDC ACM driver"
| ^~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1033:10: error: 'const struct uart_driver_api' has no member named 'fifo_fill'
1033 | .fifo_fill = cdc_acm_fifo_fill,
| ^~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1033:22: warning: initialization of 'int (*)(const struct device *)' from incompatible pointer type 'int (*)(const struct device *, const uint8_t *, int)' {aka 'int (*)(const struct device *, const unsigned char *, int)'} [-Wincompatible-pointer-types]
1033 | .fifo_fill = cdc_acm_fifo_fill,
| ^~~~~~~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1033:22: note: (near initialization for 'cdc_acm_driver_api.err_check')
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1034:10: error: 'const struct uart_driver_api' has no member named 'fifo_read'
1034 | .fifo_read = cdc_acm_fifo_read,
| ^~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1034:22: warning: initialization of 'int (*)(const struct device *, const struct uart_config *)' from incompatible pointer type 'int (*)(const struct device *, uint8_t *, const int)' {aka 'int (*)(const struct device *, unsigned char *, const int)'} [-Wincompatible-pointer-types]
1034 | .fifo_read = cdc_acm_fifo_read,
| ^~~~~~~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1034:22: note: (near initialization for 'cdc_acm_driver_api.configure')
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1035:10: error: 'const struct uart_driver_api' has no member named 'irq_tx_enable'
1035 | .irq_tx_enable = cdc_acm_irq_tx_enable,
| ^~~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1035:26: warning: initialization of 'int (*)(const struct device *, struct uart_config *)' from incompatible pointer type 'void (*)(const struct device *)' [-Wincompatible-pointer-types]
1035 | .irq_tx_enable = cdc_acm_irq_tx_enable,
| ^~~~~~~~~~~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1035:26: note: (near initialization for 'cdc_acm_driver_api.config_get')
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1036:10: error: 'const struct uart_driver_api' has no member named 'irq_tx_disable'
1036 | .irq_tx_disable = cdc_acm_irq_tx_disable,
| ^~~~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1036:27: warning: excess elements in struct initializer
1036 | .irq_tx_disable = cdc_acm_irq_tx_disable,
| ^~~~~~~~~~~~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1036:27: note: (near initialization for 'cdc_acm_driver_api')
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1037:10: error: 'const struct uart_driver_api' has no member named 'irq_tx_ready'
1037 | .irq_tx_ready = cdc_acm_irq_tx_ready,
| ^~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1037:25: warning: excess elements in struct initializer
1037 | .irq_tx_ready = cdc_acm_irq_tx_ready,
| ^~~~~~~~~~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1037:25: note: (near initialization for 'cdc_acm_driver_api')
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1038:10: error: 'const struct uart_driver_api' has no member named 'irq_rx_enable'
1038 | .irq_rx_enable = cdc_acm_irq_rx_enable,
| ^~~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1038:26: warning: excess elements in struct initializer
1038 | .irq_rx_enable = cdc_acm_irq_rx_enable,
| ^~~~~~~~~~~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1038:26: note: (near initialization for 'cdc_acm_driver_api')
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1039:10: error: 'const struct uart_driver_api' has no member named 'irq_rx_disable'
1039 | .irq_rx_disable = cdc_acm_irq_rx_disable,
| ^~~~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1039:27: warning: excess elements in struct initializer
1039 | .irq_rx_disable = cdc_acm_irq_rx_disable,
| ^~~~~~~~~~~~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1039:27: note: (near initialization for 'cdc_acm_driver_api')
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1040:10: error: 'const struct uart_driver_api' has no member named 'irq_rx_ready'
1040 | .irq_rx_ready = cdc_acm_irq_rx_ready,
| ^~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1040:25: warning: excess elements in struct initializer
1040 | .irq_rx_ready = cdc_acm_irq_rx_ready,
| ^~~~~~~~~~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1040:25: note: (near initialization for 'cdc_acm_driver_api')
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1041:10: error: 'const struct uart_driver_api' has no member named 'irq_is_pending'
1041 | .irq_is_pending = cdc_acm_irq_is_pending,
| ^~~~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1041:27: warning: excess elements in struct initializer
1041 | .irq_is_pending = cdc_acm_irq_is_pending,
| ^~~~~~~~~~~~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1041:27: note: (near initialization for 'cdc_acm_driver_api')
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1042:10: error: 'const struct uart_driver_api' has no member named 'irq_update'
1042 | .irq_update = cdc_acm_irq_update,
| ^~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1042:23: warning: excess elements in struct initializer
1042 | .irq_update = cdc_acm_irq_update,
| ^~~~~~~~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1042:23: note: (near initialization for 'cdc_acm_driver_api')
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1043:10: error: 'const struct uart_driver_api' has no member named 'irq_callback_set'
1043 | .irq_callback_set = cdc_acm_irq_callback_set,
| ^~~~~~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1043:29: warning: excess elements in struct initializer
1043 | .irq_callback_set = cdc_acm_irq_callback_set,
| ^~~~~~~~~~~~~~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1043:29: note: (near initialization for 'cdc_acm_driver_api')
ninja: build stopped: subcommand failed.
FATAL ERROR: command exited with status 1: 'c:\ncs\toolchains\31f4403e35\opt\bin\cmake.EXE' --build 'c:\study\HKU\graduate_design\nrf52840_dongle\bootloader\build'

* The terminal process terminated with exit code: 1.
* Terminal will be reused by tasks, press any key to close it.

* Executing task: nRF Connect: Build [pristine]: bootloader/build (active)

Building bootloader
C:\WINDOWS\system32\cmd.exe /d /s /c "west build --build-dir c:\study\HKU\graduate_design\nrf52840_dongle\bootloader\build c:\study\HKU\graduate_design\nrf52840_dongle\bootloader --pristine --board nrf52840dongle_nrf52840 -- -DNCS_TOOLCHAIN_VERSION:STRING="NONE" -DBOARD_ROOT:STRING="c:/study/HKU/毕设/nrf52840_dongle/bootloader" -DCONF_FILE:STRING="c:/study/HKU/graduate_design/nrf52840_dongle/bootloader/prj_minimal.conf""

-- west build: generating a build system
Loading Zephyr default modules (Zephyr base).
-- Application: C:/study/HKU/graduate_design/nrf52840_dongle/bootloader
-- CMake version: 3.20.5
-- Found Python3: C:/ncs/toolchains/31f4403e35/opt/bin/python.exe (found suitable exact version "3.8.2") found components: Interpreter
-- Cache files will be written to: C:/ncs/v2.4.0/zephyr/.cache
-- Zephyr version: 3.3.99 (C:/ncs/v2.4.0/zephyr)
-- Found west (found suitable version "1.0.0", minimum required is "0.7.1")
CMake Warning at C:/ncs/v2.4.0/zephyr/cmake/modules/boards.cmake:88 (message):
BOARD_ROOT element without a 'boards' subdirectory:

c:/study/HKU/毕设/nrf52840_dongle/bootloader

Hints:

- if your board directory is '/foo/bar/boards/<ARCH>/my_board' then add '/foo/bar' to BOARD_ROOT, not the entire board directory
- if in doubt, use absolute paths
Call Stack (most recent call first):
C:/ncs/v2.4.0/zephyr/cmake/modules/zephyr_default.cmake:115 (include)
C:/ncs/v2.4.0/zephyr/share/zephyr-package/cmake/ZephyrConfig.cmake:66 (include)
C:/ncs/v2.4.0/zephyr/share/zephyr-package/cmake/ZephyrConfig.cmake:92 (include_boilerplate)
CMakeLists.txt:9 (find_package)


-- Board: nrf52840dongle_nrf52840
-- Found host-tools: zephyr 0.16.0 (C:/ncs/toolchains/31f4403e35/opt/zephyr-sdk)
-- Found toolchain: zephyr 0.16.0 (C:/ncs/toolchains/31f4403e35/opt/zephyr-sdk)
-- Found Dtc: C:/ncs/toolchains/31f4403e35/opt/bin/dtc.exe (found suitable version "1.4.7", minimum required is "1.4.6")
-- Found BOARD.dts: C:/ncs/v2.4.0/zephyr/boards/arm/nrf52840dongle_nrf52840/nrf52840dongle_nrf52840.dts
-- Generated zephyr.dts: C:/study/HKU/graduate_design/nrf52840_dongle/bootloader/build/zephyr/zephyr.dts
-- Generated devicetree_generated.h: C:/study/HKU/graduate_design/nrf52840_dongle/bootloader/build/zephyr/include/generated/devicetree_generated.h
-- Including generated dts.cmake file: C:/study/HKU/graduate_design/nrf52840_dongle/bootloader/build/zephyr/dts.cmake
Parsing C:/ncs/v2.4.0/zephyr/Kconfig
Loaded configuration 'C:/ncs/v2.4.0/zephyr/boards/arm/nrf52840dongle_nrf52840/nrf52840dongle_nrf52840_defconfig'
Merged configuration 'c:/study/HKU/graduate_design/nrf52840_dongle/bootloader/prj_minimal.conf'
Configuration saved to 'C:/study/HKU/graduate_design/nrf52840_dongle/bootloader/build/zephyr/.config'
Kconfig header saved to 'C:/study/HKU/graduate_design/nrf52840_dongle/bootloader/build/zephyr/include/generated/autoconf.h'

warning: HW_STACK_PROTECTION (defined at arch/Kconfig:258) was assigned the value 'y' but got the
value 'n'. Check these unsatisfied dependencies: ARCH_HAS_STACK_PROTECTION (=n). See
docs.zephyrproject.org/.../kconfig.html and/or look up
HW_STACK_PROTECTION in the menuconfig/guiconfig interface. The Application Development Primer,
Setting Configuration Values, and Kconfig - Tips and Best Practices sections of the manual might be
helpful too.

-- Found GnuLd: c:/ncs/toolchains/31f4403e35/opt/zephyr-sdk/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/12.2.0/../../../../arm-zephyr-eabi/bin/ld.bfd.exe (found version "2.38")
-- The C compiler identification is GNU 12.2.0
-- The CXX compiler identification is GNU 12.2.0
-- The ASM compiler identification is GNU
-- Found assembler: C:/ncs/toolchains/31f4403e35/opt/zephyr-sdk/arm-zephyr-eabi/bin/arm-zephyr-eabi-gcc.exe
CMake Warning at C:/ncs/v2.4.0/zephyr/subsys/usb/device/CMakeLists.txt:22 (message):
CONFIG_USB_DEVICE_VID has default value 0x2FE3.

This value is only for testing and MUST be configured for USB products.


CMake Warning at C:/ncs/v2.4.0/zephyr/subsys/usb/device/CMakeLists.txt:28 (message):
CONFIG_USB_DEVICE_PID has default value 0x100.

This value is only for testing and MUST be configured for USB products.


CMake Warning at C:/ncs/v2.4.0/nrf/lib/flash_patch/CMakeLists.txt:8 (message):


----------------------------------------------------------
--- WARNING: To maintain the integrity of secure boot, ---
--- enable CONFIG_DISABLE_FLASH_PATCH in production. ---
----------------------------------------------------------


CMake Warning at C:/ncs/v2.4.0/nrf/subsys/bootloader/CMakeLists.txt:12 (message):
Building bootloader without associated application. Dummy values will be
used for partition configuration.The idiomatic way of including the
immutable bootloader is to set the configuration
'CONFIG_SECURE_BOOTLOADER=y' in your applications 'prj.conf'.


CMake Warning at C:/ncs/v2.4.0/zephyr/CMakeLists.txt:838 (message):
No SOURCES given to Zephyr library: lib__libc__common

Excluding target from build.


-- Configuring done
-- Generating done
-- Build files have been written to: C:/study/HKU/graduate_design/nrf52840_dongle/bootloader/build
-- west build: building application
[1/153] Generating include/generated/version.h
-- Zephyr version: 3.3.99 (C:/ncs/v2.4.0/zephyr), build: v3.3.99-ncs1
[2/153] Generating misc/generated/syscalls.json, misc/generated/struct_tags.json
[3/153] Generating include/generated/syscall_dispatch.c, include/generated/syscall_list.h
[4/153] Generating include/generated/driver-validation.h
[5/153] Generating include/generated/kobj-types-enum.h, include/generated/otype-to-str.h, include/generated/otype-to-size.h
[6/153] Building C object zephyr/CMakeFiles/offsets.dir/arch/arm/core/offsets/offsets.c.obj
[7/153] Generating include/generated/offsets.h
[8/153] Building ASM object zephyr/arch/arch/arm/core/aarch32/CMakeFiles/arch__arm__core__aarch32.dir/nmi_on_reset.S.obj
[9/153] Building ASM object zephyr/arch/arch/arm/core/aarch32/CMakeFiles/arch__arm__core__aarch32.dir/swap_helper.S.obj
[10/153] Building ASM object zephyr/arch/arch/arm/core/aarch32/CMakeFiles/arch__arm__core__aarch32.dir/cpu_idle.S.obj
[11/153] Building ASM object zephyr/arch/arch/arm/core/aarch32/cortex_m/CMakeFiles/arch__arm__core__aarch32__cortex_m.dir/fault_s.S.obj
[12/153] Building ASM object zephyr/arch/arch/arm/core/aarch32/cortex_m/CMakeFiles/arch__arm__core__aarch32__cortex_m.dir/reset.S.obj
[13/153] Building ASM object zephyr/arch/arch/arm/core/aarch32/CMakeFiles/arch__arm__core__aarch32.dir/isr_wrapper.S.obj
[14/153] Building ASM object zephyr/arch/arch/arm/core/aarch32/cortex_m/CMakeFiles/arch__arm__core__aarch32__cortex_m.dir/vector_table.S.obj
[15/153] Building ASM object zephyr/arch/arch/arm/core/aarch32/cortex_m/CMakeFiles/arch__arm__core__aarch32__cortex_m.dir/exc_exit.S.obj
[16/153] Building C object zephyr/arch/arch/arm/core/aarch32/CMakeFiles/arch__arm__core__aarch32.dir/nmi.c.obj
[17/153] Building C object zephyr/arch/arch/arm/core/aarch32/cortex_m/CMakeFiles/arch__arm__core__aarch32__cortex_m.dir/fpu.c.obj
[18/153] Building C object zephyr/arch/arch/arm/core/aarch32/cortex_m/CMakeFiles/arch__arm__core__aarch32__cortex_m.dir/irq_init.c.obj
[19/153] Generating linker_zephyr_pre1.cmd
[20/153] Building C object zephyr/arch/common/CMakeFiles/isr_tables.dir/isr_tables.c.obj
[21/153] Building C object zephyr/arch/arch/arm/core/aarch32/CMakeFiles/arch__arm__core__aarch32.dir/prep_c.c.obj
[22/153] Building C object zephyr/arch/arch/arm/core/aarch32/CMakeFiles/arch__arm__core__aarch32.dir/swap.c.obj
[23/153] Building C object zephyr/arch/arch/arm/core/aarch32/CMakeFiles/arch__arm__core__aarch32.dir/thread.c.obj
[24/153] Generating linker_zephyr_pre0.cmd
[25/153] Building C object zephyr/arch/common/CMakeFiles/arch__common.dir/sw_isr_common.c.obj
[26/153] Building C object zephyr/arch/arch/arm/core/aarch32/cortex_m/CMakeFiles/arch__arm__core__aarch32__cortex_m.dir/thread_abort.c.obj
[27/153] Building C object zephyr/arch/arch/arm/core/aarch32/CMakeFiles/arch__arm__core__aarch32.dir/irq_manage.c.obj
[28/153] Building C object zephyr/arch/arch/arm/core/aarch32/cortex_m/CMakeFiles/arch__arm__core__aarch32__cortex_m.dir/fault.c.obj
[29/153] Building C object zephyr/arch/arch/arm/core/aarch32/cortex_m/CMakeFiles/arch__arm__core__aarch32__cortex_m.dir/scb.c.obj
[30/153] Building C object zephyr/arch/arch/arm/core/aarch32/CMakeFiles/arch__arm__core__aarch32.dir/fatal.c.obj
[31/153] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/hex.c.obj
[32/153] Generating ../../../include/generated/libc/minimal/strerror_table.h
[33/153] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/dec.c.obj
[34/153] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/sem.c.obj
[35/153] Building C object CMakeFiles/app.dir/src/main.c.obj
[36/153] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/printk.c.obj
[37/153] Building C object zephyr/soc/arm/nordic_nrf/nrf52/CMakeFiles/soc__arm__nordic_nrf__nrf52.dir/soc.c.obj
[38/153] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/multi_heap.c.obj
[39/153] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/fdtable.c.obj
[40/153] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/timeutil.c.obj
[41/153] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/crc7_sw.c.obj
[42/153] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdlib/atoi.c.obj
[43/153] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/crc32_sw.c.obj
[44/153] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/cbprintf_packaged.c.obj
[45/153] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/thread_entry.c.obj
[46/153] Linking C static library zephyr\arch\common\libisr_tables.a
[47/153] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/crc8_sw.c.obj
[48/153] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/bitarray.c.obj
[49/153] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdlib/abort.c.obj
[50/153] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdlib/strtol.c.obj
[51/153] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdlib/strtoul.c.obj
[52/153] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/crc32c_sw.c.obj
[53/153] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdlib/bsearch.c.obj
[54/153] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/heap-validate.c.obj
[55/153] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/heap.c.obj
[56/153] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/rb.c.obj
[57/153] Linking C static library zephyr\arch\arch\arm\core\aarch32\cortex_m\libarch__arm__core__aarch32__cortex_m.a
[58/153] Linking C static library zephyr\arch\arch\arm\core\aarch32\libarch__arm__core__aarch32.a
[59/153] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdlib/strtoull.c.obj
[60/153] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdlib/malloc.c.obj
[61/153] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdlib/qsort.c.obj
[62/153] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdlib/strtoll.c.obj
[63/153] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/string/strncasecmp.c.obj
[64/153] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/string/strspn.c.obj
[65/153] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/string/strstr.c.obj
[66/153] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/string/strerror.c.obj
[67/153] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdout/stdout_console.c.obj
[68/153] Building C object zephyr/CMakeFiles/zephyr_pre0.dir/misc/empty_file.c.obj
[69/153] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdlib/exit.c.obj
[70/153] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/math/sqrtf.c.obj
[71/153] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/crc16_sw.c.obj
[72/153] Linking C static library zephyr\soc\arm\nordic_nrf\nrf52\libsoc__arm__nordic_nrf__nrf52.a
[73/153] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/string/string.c.obj
[74/153] Linking C static library zephyr\arch\common\libarch__common.a
[75/153] Building ASM object zephyr/CMakeFiles/zephyr.dir/soc/arm/nordic_nrf/common/soc_nrf_common.S.obj
[76/153] Linking C static library app\libapp.a
[77/153] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/time/gmtime.c.obj
[78/153] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/math/sqrt.c.obj
[79/153] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdout/sprintf.c.obj
[80/153] Building C object zephyr/CMakeFiles/zephyr.dir/misc/generated/configs.c.obj
[81/153] Building C object zephyr/CMakeFiles/zephyr.dir/soc/arm/nordic_nrf/validate_enabled_instances.c.obj
[82/153] Building C object zephyr/lib/libc/minimal/CMakeFiles/lib__libc__minimal.dir/source/stdout/fprintf.c.obj
[83/153] Building C object zephyr/CMakeFiles/zephyr.dir/subsys/tracing/tracing_none.c.obj
[84/153] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/assert.c.obj
[85/153] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/cbprintf.c.obj
[86/153] Building C object zephyr/drivers/pinctrl/CMakeFiles/drivers__pinctrl.dir/common.c.obj
[87/153] Building C object zephyr/CMakeFiles/zephyr.dir/soc/arm/nordic_nrf/validate_base_addresses.c.obj
[88/153] Building C object zephyr/CMakeFiles/zephyr.dir/C_/ncs/v2.4.0/nrfxlib/crypto/nrf_cc310_platform/src/nrf_cc3xx_platform_abort_zephyr.c.obj
[89/153] Building C object zephyr/CMakeFiles/zephyr.dir/subsys/usb/device/usb_work_q.c.obj
[90/153] Building C object modules/nrf/subsys/bootloader/bl_crypto/CMakeFiles/..__nrf__subsys__bootloader__bl_crypto.dir/bl_crypto_cc310_ecdsa.c.obj
[91/153] Building C object zephyr/boards/arm/nrf52840dongle_nrf52840/CMakeFiles/boards__arm__nrf52840dongle_nrf52840.dir/board.c.obj
[92/153] Building C object zephyr/CMakeFiles/zephyr.dir/C_/ncs/v2.4.0/nrfxlib/crypto/nrf_cc310_platform/src/nrf_cc3xx_platform_no_mutex_zephyr.c.obj
[93/153] Building C object zephyr/drivers/hwinfo/CMakeFiles/drivers__hwinfo.dir/hwinfo_weak_impl.c.obj
[94/153] Building C object modules/nrf/lib/fprotect/CMakeFiles/..__nrf__lib__fprotect.dir/fprotect_acl.c.obj
[95/153] Building C object modules/nrf/subsys/bootloader/bl_boot/CMakeFiles/..__nrf__subsys__bootloader__bl_boot.dir/bl_boot.c.obj
[96/153] Building C object zephyr/drivers/pinctrl/CMakeFiles/drivers__pinctrl.dir/pinctrl_nrf.c.obj
[97/153] Building C object modules/nrf/subsys/bootloader/bl_crypto/CMakeFiles/..__nrf__subsys__bootloader__bl_crypto.dir/bl_crypto_cc310_common.c.obj
[98/153] Building C object zephyr/CMakeFiles/zephyr.dir/subsys/usb/device/usb_transfer.c.obj
[99/153] Building C object zephyr/drivers/hwinfo/CMakeFiles/drivers__hwinfo.dir/hwinfo_nrf.c.obj
[100/153] Building C object modules/nrf/subsys/bootloader/bl_crypto/CMakeFiles/..__nrf__subsys__bootloader__bl_crypto.dir/bl_crypto_cc310_hash.c.obj
[101/153] Building C object modules/nrf/drivers/hw_cc310/CMakeFiles/..__nrf__drivers__hw_cc310.dir/hw_cc310.c.obj
[102/153] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/cbprintf_complete.c.obj
[103/153] Linking C static library zephyr\lib\libc\minimal\liblib__libc__minimal.a
[104/153] Building C object modules/nrf/subsys/bootloader/bl_crypto/CMakeFiles/..__nrf__subsys__bootloader__bl_crypto.dir/bl_crypto.c.obj
[105/153] Building C object modules/nrf/subsys/fw_info/CMakeFiles/..__nrf__subsys__fw_info.dir/fw_info.c.obj
[106/153] Building C object modules/nrf/subsys/bootloader/bl_storage/CMakeFiles/..__nrf__subsys__bootloader__bl_storage.dir/bl_storage.c.obj
[107/153] Building C object modules/hal_nordic/nrfx/CMakeFiles/modules__hal_nordic__nrfx.dir/nrfx_glue.c.obj
[108/153] Building C object zephyr/CMakeFiles/zephyr.dir/subsys/usb/device/class/cdc_acm.c.obj
FAILED: zephyr/CMakeFiles/zephyr.dir/subsys/usb/device/class/cdc_acm.c.obj
C:\ncs\toolchains\31f4403e35\opt\zephyr-sdk\arm-zephyr-eabi\bin\arm-zephyr-eabi-gcc.exe -DEXT_API_MAGIC=0x281ee6de,0xb845acea,13314 -DFIRMWARE_INFO_MAGIC=0x281ee6de,0x8fcebb4c,13314 -DKERNEL -DNRF52840_XXAA -DUSE_PARTITION_MANAGER=0 -DVALIDATION_INFO_MAGIC=0x281ee6de,0x86518483,78850 -DVALIDATION_POINTER_MAGIC=0x281ee6de,0x6919b47e,78850 -D__PROGRAM_START -D__ZEPHYR__=1 -IC:/ncs/v2.4.0/zephyr/kernel/include -IC:/ncs/v2.4.0/zephyr/arch/arm/include -IC:/ncs/v2.4.0/zephyr/include -Izephyr/include/generated -IC:/ncs/v2.4.0/zephyr/soc/arm/nordic_nrf/nrf52 -IC:/ncs/v2.4.0/zephyr/soc/arm/nordic_nrf/common/. -IC:/ncs/v2.4.0/zephyr/subsys/usb/device -IC:/ncs/v2.4.0/nrf/include -IC:/ncs/v2.4.0/nrf/subsys/bootloader/include -IC:/ncs/v2.4.0/nrf/subsys/bootloader/include/dummy_values -IC:/ncs/v2.4.0/nrf/tests/include -IC:/ncs/v2.4.0/modules/hal/cmsis/CMSIS/Core/Include -IC:/ncs/v2.4.0/modules/hal/nordic/nrfx -IC:/ncs/v2.4.0/modules/hal/nordic/nrfx/drivers/include -IC:/ncs/v2.4.0/modules/hal/nordic/nrfx/mdk -IC:/ncs/v2.4.0/zephyr/modules/hal_nordic/nrfx/. -IC:/ncs/v2.4.0/nrfxlib/crypto/nrf_oberon/include -IC:/ncs/v2.4.0/nrfxlib/crypto/nrf_cc310_bl/include -isystem C:/ncs/v2.4.0/zephyr/lib/libc/minimal/include -isystem c:/ncs/toolchains/31f4403e35/opt/zephyr-sdk/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/12.2.0/include -isystem c:/ncs/toolchains/31f4403e35/opt/zephyr-sdk/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/12.2.0/include-fixed -isystem C:/ncs/v2.4.0/nrfxlib/crypto/nrf_cc310_platform/include -fno-strict-aliasing -Os -imacros C:/study/HKU/graduate_design/nrf52840_dongle/bootloader/build/zephyr/include/generated/autoconf.h -ffreestanding -fno-common -g -gdwarf-4 -fdiagnostics-color=always -mcpu=cortex-m4 -mthumb -mabi=aapcs -mfpu=fpv4-sp-d16 -mfloat-abi=hard --sysroot=C:/ncs/toolchains/31f4403e35/opt/zephyr-sdk/arm-zephyr-eabi/arm-zephyr-eabi -imacros C:/ncs/v2.4.0/zephyr/include/zephyr/toolchain/zephyr_stdint.h -Wall -Wformat -Wformat-security -Wno-format-zero-length -Wno-pointer-sign -Wpointer-arith -Wexpansion-to-defined -Wno-unused-but-set-variable -Werror=implicit-int -fno-pic -fno-pie -fno-asynchronous-unwind-tables -fno-reorder-functions --param=min-pagesize=0 -fno-defer-pop -fmacro-prefix-map=C:/study/HKU/graduate_design/nrf52840_dongle/bootloader=CMAKE_SOURCE_DIR -fmacro-prefix-map=C:/ncs/v2.4.0/zephyr=ZEPHYR_BASE -fmacro-prefix-map=C:/ncs/v2.4.0=WEST_TOPDIR -ffunction-sections -fdata-sections -std=c99 -nostdinc -MD -MT zephyr/CMakeFiles/zephyr.dir/subsys/usb/device/class/cdc_acm.c.obj -MF zephyr\CMakeFiles\zephyr.dir\subsys\usb\device\class\cdc_acm.c.obj.d -o zephyr/CMakeFiles/zephyr.dir/subsys/usb/device/class/cdc_acm.c.obj -c C:/ncs/v2.4.0/zephyr/subsys/usb/device/class/cdc_acm.c
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:53:2: error: #error "CONFIG_UART_INTERRUPT_DRIVEN must be set for CDC ACM driver"
53 | #error "CONFIG_UART_INTERRUPT_DRIVEN must be set for CDC ACM driver"
| ^~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1033:10: error: 'const struct uart_driver_api' has no member named 'fifo_fill'
1033 | .fifo_fill = cdc_acm_fifo_fill,
| ^~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1033:22: warning: initialization of 'int (*)(const struct device *)' from incompatible pointer type 'int (*)(const struct device *, const uint8_t *, int)' {aka 'int (*)(const struct device *, const unsigned char *, int)'} [-Wincompatible-pointer-types]
1033 | .fifo_fill = cdc_acm_fifo_fill,
| ^~~~~~~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1033:22: note: (near initialization for 'cdc_acm_driver_api.err_check')
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1034:10: error: 'const struct uart_driver_api' has no member named 'fifo_read'
1034 | .fifo_read = cdc_acm_fifo_read,
| ^~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1034:22: warning: initialization of 'int (*)(const struct device *, const struct uart_config *)' from incompatible pointer type 'int (*)(const struct device *, uint8_t *, const int)' {aka 'int (*)(const struct device *, unsigned char *, const int)'} [-Wincompatible-pointer-types]
1034 | .fifo_read = cdc_acm_fifo_read,
| ^~~~~~~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1034:22: note: (near initialization for 'cdc_acm_driver_api.configure')
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1035:10: error: 'const struct uart_driver_api' has no member named 'irq_tx_enable'
1035 | .irq_tx_enable = cdc_acm_irq_tx_enable,
| ^~~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1035:26: warning: initialization of 'int (*)(const struct device *, struct uart_config *)' from incompatible pointer type 'void (*)(const struct device *)' [-Wincompatible-pointer-types]
1035 | .irq_tx_enable = cdc_acm_irq_tx_enable,
| ^~~~~~~~~~~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1035:26: note: (near initialization for 'cdc_acm_driver_api.config_get')
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1036:10: error: 'const struct uart_driver_api' has no member named 'irq_tx_disable'
1036 | .irq_tx_disable = cdc_acm_irq_tx_disable,
| ^~~~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1036:27: warning: excess elements in struct initializer
1036 | .irq_tx_disable = cdc_acm_irq_tx_disable,
| ^~~~~~~~~~~~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1036:27: note: (near initialization for 'cdc_acm_driver_api')
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1037:10: error: 'const struct uart_driver_api' has no member named 'irq_tx_ready'
1037 | .irq_tx_ready = cdc_acm_irq_tx_ready,
| ^~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1037:25: warning: excess elements in struct initializer
1037 | .irq_tx_ready = cdc_acm_irq_tx_ready,
| ^~~~~~~~~~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1037:25: note: (near initialization for 'cdc_acm_driver_api')
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1038:10: error: 'const struct uart_driver_api' has no member named 'irq_rx_enable'
1038 | .irq_rx_enable = cdc_acm_irq_rx_enable,
| ^~~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1038:26: warning: excess elements in struct initializer
1038 | .irq_rx_enable = cdc_acm_irq_rx_enable,
| ^~~~~~~~~~~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1038:26: note: (near initialization for 'cdc_acm_driver_api')
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1039:10: error: 'const struct uart_driver_api' has no member named 'irq_rx_disable'
1039 | .irq_rx_disable = cdc_acm_irq_rx_disable,
| ^~~~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1039:27: warning: excess elements in struct initializer
1039 | .irq_rx_disable = cdc_acm_irq_rx_disable,
| ^~~~~~~~~~~~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1039:27: note: (near initialization for 'cdc_acm_driver_api')
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1040:10: error: 'const struct uart_driver_api' has no member named 'irq_rx_ready'
1040 | .irq_rx_ready = cdc_acm_irq_rx_ready,
| ^~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1040:25: warning: excess elements in struct initializer
1040 | .irq_rx_ready = cdc_acm_irq_rx_ready,
| ^~~~~~~~~~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1040:25: note: (near initialization for 'cdc_acm_driver_api')
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1041:10: error: 'const struct uart_driver_api' has no member named 'irq_is_pending'
1041 | .irq_is_pending = cdc_acm_irq_is_pending,
| ^~~~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1041:27: warning: excess elements in struct initializer
1041 | .irq_is_pending = cdc_acm_irq_is_pending,
| ^~~~~~~~~~~~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1041:27: note: (near initialization for 'cdc_acm_driver_api')
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1042:10: error: 'const struct uart_driver_api' has no member named 'irq_update'
1042 | .irq_update = cdc_acm_irq_update,
| ^~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1042:23: warning: excess elements in struct initializer
1042 | .irq_update = cdc_acm_irq_update,
| ^~~~~~~~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1042:23: note: (near initialization for 'cdc_acm_driver_api')
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1043:10: error: 'const struct uart_driver_api' has no member named 'irq_callback_set'
1043 | .irq_callback_set = cdc_acm_irq_callback_set,
| ^~~~~~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1043:29: warning: excess elements in struct initializer
1043 | .irq_callback_set = cdc_acm_irq_callback_set,
| ^~~~~~~~~~~~~~~~~~~~~~~~
C:\ncs\v2.4.0\zephyr\subsys\usb\device\class\cdc_acm.c:1043:29: note: (near initialization for 'cdc_acm_driver_api')
[109/153] Building C object zephyr/CMakeFiles/zephyr.dir/subsys/usb/device/usb_descriptor.c.obj
[110/153] Building C object modules/hal_nordic/nrfx/CMakeFiles/modules__hal_nordic__nrfx.dir/C_/ncs/v2.4.0/modules/hal/nordic/nrfx/mdk/system_nrf52840.c.obj
[111/153] Linking C static library modules\nrf\lib\fprotect\lib..__nrf__lib__fprotect.a
[112/153] Linking C static library zephyr\boards\arm\nrf52840dongle_nrf52840\libboards__arm__nrf52840dongle_nrf52840.a
[113/153] Linking C static library modules\nrf\drivers\hw_cc310\lib..__nrf__drivers__hw_cc310.a
[114/153] Linking C static library zephyr\drivers\pinctrl\libdrivers__pinctrl.a
[115/153] Linking C static library modules\nrf\subsys\bootloader\bl_boot\lib..__nrf__subsys__bootloader__bl_boot.a
[116/153] Linking C static library zephyr\drivers\hwinfo\libdrivers__hwinfo.a
[117/153] Linking C static library modules\nrf\subsys\fw_info\lib..__nrf__subsys__fw_info.a
[118/153] Building C object modules/hal_nordic/nrfx/CMakeFiles/modules__hal_nordic__nrfx.dir/C_/ncs/v2.4.0/modules/hal/nordic/nrfx/helpers/nrfx_flag32_allocator.c.obj
[119/153] Building C object modules/nrf/subsys/bootloader/bl_validation/CMakeFiles/..__nrf__subsys__bootloader__bl_validation.dir/bl_validation.c.obj
[120/153] Linking C static library modules\nrf\subsys\bootloader\bl_storage\lib..__nrf__subsys__bootloader__bl_storage.a
[121/153] Linking C static library modules\nrf\subsys\bootloader\bl_crypto\lib..__nrf__subsys__bootloader__bl_crypto.a
[122/153] Building C object zephyr/kernel/CMakeFiles/kernel.dir/device.c.obj
[123/153] Building C object zephyr/kernel/CMakeFiles/kernel.dir/banner.c.obj
[124/153] Building C object modules/hal_nordic/nrfx/CMakeFiles/modules__hal_nordic__nrfx.dir/C_/ncs/v2.4.0/modules/hal/nordic/nrfx/drivers/src/nrfx_nvmc.c.obj
[125/153] Building C object zephyr/kernel/CMakeFiles/kernel.dir/main_weak.c.obj
[126/153] Building C object modules/hal_nordic/nrfx/CMakeFiles/modules__hal_nordic__nrfx.dir/C_/ncs/v2.4.0/modules/hal/nordic/nrfx/drivers/src/nrfx_power.c.obj
[127/153] Building C object zephyr/CMakeFiles/zephyr.dir/subsys/usb/device/usb_device.c.obj
[128/153] Building C object zephyr/drivers/usb/device/CMakeFiles/drivers__usb__device.dir/usb_dc_nrfx.c.obj
[129/153] Building C object modules/hal_nordic/nrfx/CMakeFiles/modules__hal_nordic__nrfx.dir/C_/ncs/v2.4.0/modules/hal/nordic/nrfx/drivers/src/nrfx_usbd.c.obj
ninja: build stopped: subcommand failed.
FATAL ERROR: command exited with status 1: 'c:\ncs\toolchains\31f4403e35\opt\bin\cmake.EXE' --build 'c:\study\HKU\graduate_design\nrf52840_dongle\bootloader\build'

* The terminal process terminated with exit code: 1.
* Terminal will be reused by tasks, press any key to close it.
  • Hi HarryHuang,

    I ran the code of blink, and wrote it on the nrf52840 dongle, the code works, but the bootloader disappear, the computer cannot detect nrf52840 dongle anymore.

    This is the expected behavior. The dongle interacts with the computer based on what application is actively running.

    To put the dongle into bootloader mode and continue to work with it, please refer to this blog post:  nRF52840 Dongle Programming Tutorial.

    Then I wanted to compile the example code of bootloader file and created bootloader hex file, using jlink to upload bootloader to the dongle, however, the t code cannot pass compile, I used VS code application by the way.

    Could you please give me the right bootloader code that can pass the compile?

    I think the issue is mostly that the bootloader does not stop to talk to the computer, rather than it being actually gone. Therefore, please try to go into bootloader mode first, rather than attempting to reflash the bootloader.

    Otherwise, the factory bootloader of the nRF52840 Dongle cannot be flashed via the USB port. It has to be flashed via the SWD interface. More information on this can be found at the "Using an external debugger" section of the blog post I linked above.

    If you are trying to look into testing an application with a MCUboot bootloader, then the nRF52840 Dongle is unfortunately not the best tool for the job. It can still work via the SWD interface, but you will need an external debugger, and there are caveats you need to keep in mind.
    Please refer to the discussion in this DevZone thread:  nrf52840dongle_nrf52840 CONFIG_BOOTLOADER_MCUBOOT=y partition to small.

    If you are looking into developing an application on a nRF52 SoC, I recommend getting a Development Kit instead of the Dongle. Again, you can still work with the Dongle. It is just not a very convenient tool, but you can get it to work.

    Hieu

Related