RIOT-OS / RIOT

RIOT - The friendly OS for IoT
https://riot-os.org
GNU Lesser General Public License v2.1
4.95k stars 1.99k forks source link

Can't build rust hello world example. #18748

Closed omicronns closed 1 year ago

omicronns commented 2 years ago

Hi, I'm trying to build rust-hello-world example and it fails at linking step:

➜  rust-hello-world git:(2022.10-branch) make BOARD=cc1352-launchpad          
Building application "hello-world" for "cc1352-launchpad" with MCU "cc26x2_cc13x2".

"make" -C /home/kad/Documents/Work/projects/RIOT/boards/cc1352-launchpad compile-commands
make[2]: Nothing to be done for 'compile-commands'.
"make" -C /home/kad/Documents/Work/projects/RIOT/boards/common/init compile-commands
make[2]: Nothing to be done for 'compile-commands'.
"make" -C /home/kad/Documents/Work/projects/RIOT/core compile-commands
make[2]: Nothing to be done for 'compile-commands'.
"make" -C /home/kad/Documents/Work/projects/RIOT/core/lib compile-commands
make[2]: Nothing to be done for 'compile-commands'.
"make" -C /home/kad/Documents/Work/projects/RIOT/cpu/cc26x2_cc13x2 compile-commands
"make" -C /home/kad/Documents/Work/projects/RIOT/cpu/cc26x2_cc13x2/periph compile-commands
make[3]: Nothing to be done for 'compile-commands'.
"make" -C /home/kad/Documents/Work/projects/RIOT/cpu/cc26xx_cc13xx compile-commands
"make" -C /home/kad/Documents/Work/projects/RIOT/cpu/cc26xx_cc13xx/periph compile-commands
make[4]: Nothing to be done for 'compile-commands'.
"make" -C /home/kad/Documents/Work/projects/RIOT/cpu/cortexm_common compile-commands
"make" -C /home/kad/Documents/Work/projects/RIOT/cpu/cortexm_common/periph compile-commands
make[4]: Nothing to be done for 'compile-commands'.
"make" -C /home/kad/Documents/Work/projects/RIOT/drivers compile-commands
"make" -C /home/kad/Documents/Work/projects/RIOT/drivers/periph_common compile-commands
make[3]: Nothing to be done for 'compile-commands'.
"make" -C /home/kad/Documents/Work/projects/RIOT/sys compile-commands
"make" -C /home/kad/Documents/Work/projects/RIOT/sys/auto_init compile-commands
make[3]: Nothing to be done for 'compile-commands'.
"make" -C /home/kad/Documents/Work/projects/RIOT/sys/div compile-commands
make[3]: Nothing to be done for 'compile-commands'.
"make" -C /home/kad/Documents/Work/projects/RIOT/sys/libc compile-commands
make[3]: Nothing to be done for 'compile-commands'.
"make" -C /home/kad/Documents/Work/projects/RIOT/sys/malloc_thread_safe compile-commands
make[3]: Nothing to be done for 'compile-commands'.
"make" -C /home/kad/Documents/Work/projects/RIOT/sys/newlib_syscalls_default compile-commands
make[3]: Nothing to be done for 'compile-commands'.
"make" -C /home/kad/Documents/Work/projects/RIOT/sys/stdio_uart compile-commands
make[3]: Nothing to be done for 'compile-commands'.
    Finished release [optimized] target(s) in 0.04s
"make" -C /home/kad/Documents/Work/projects/RIOT/boards/cc1352-launchpad
"make" -C /home/kad/Documents/Work/projects/RIOT/boards/common/init
"make" -C /home/kad/Documents/Work/projects/RIOT/core
"make" -C /home/kad/Documents/Work/projects/RIOT/core/lib
"make" -C /home/kad/Documents/Work/projects/RIOT/cpu/cc26x2_cc13x2
"make" -C /home/kad/Documents/Work/projects/RIOT/cpu/cc26x2_cc13x2/periph
"make" -C /home/kad/Documents/Work/projects/RIOT/cpu/cc26xx_cc13xx
"make" -C /home/kad/Documents/Work/projects/RIOT/cpu/cc26xx_cc13xx/periph
"make" -C /home/kad/Documents/Work/projects/RIOT/cpu/cortexm_common
"make" -C /home/kad/Documents/Work/projects/RIOT/cpu/cortexm_common/periph
"make" -C /home/kad/Documents/Work/projects/RIOT/drivers
"make" -C /home/kad/Documents/Work/projects/RIOT/drivers/periph_common
"make" -C /home/kad/Documents/Work/projects/RIOT/sys
"make" -C /home/kad/Documents/Work/projects/RIOT/sys/auto_init
"make" -C /home/kad/Documents/Work/projects/RIOT/sys/div
"make" -C /home/kad/Documents/Work/projects/RIOT/sys/libc
"make" -C /home/kad/Documents/Work/projects/RIOT/sys/malloc_thread_safe
"make" -C /home/kad/Documents/Work/projects/RIOT/sys/newlib_syscalls_default
"make" -C /home/kad/Documents/Work/projects/RIOT/sys/stdio_uart
/usr/lib/gcc/arm-none-eabi/12.2.0/../../../../arm-none-eabi/bin/ld: warning: lib_a-nano-vfprintf_i.o: missing .note.GNU-stack section implies executable stack
/usr/lib/gcc/arm-none-eabi/12.2.0/../../../../arm-none-eabi/bin/ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
collect2: error: ld returned 1 exit status
make: *** [/home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/../../Makefile.include:729: /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/hello-world.elf] Error 1

Dry run for more information:

➜  rust-hello-world git:(2022.10-branch) make -n BOARD=cc1352-launchpad
command -v arm-none-eabi-gcc >/dev/null 2>&1 || { /usr/bin/env echo -e 'Compiler arm-none-eabi-gcc is required but not found in PATH.  Aborting.'; exit 1;}
/usr/bin/env echo -e 'Building application "hello-world" for "cc1352-launchpad" with MCU "cc26x2_cc13x2".'
/usr/bin/env echo -e
mkdir -p '/home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/riotbuild/'
'/home/kad/Documents/Work/projects/RIOT/dist/tools/genconfigheader/genconfigheader.sh' -DDEVELHELP -Werror -DCPU_VARIANT_X2 -mno-thumb-interwork -mcpu=cortex-m4 -mlittle-endian -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 -ffunction-sections -fdata-sections -fshort-enums -ggdb -g3 -Os -DCPU_MODEL_CC1352R1 -DCPU_CORE_CORTEX_M4F -DRIOT_APPLICATION=\"hello-world\" -DBOARD_CC1352_LAUNCHPAD=\"cc1352-launchpad\" -DRIOT_BOARD=BOARD_CC1352_LAUNCHPAD -DCPU_CC26X2_CC13X2=\"cc26x2_cc13x2\" -DRIOT_CPU=CPU_CC26X2_CC13X2 -DMCU_CC26X2_CC13X2=\"cc26x2_cc13x2\" -DRIOT_MCU=MCU_CC26X2_CC13X2 -std=c11 -fwrapv -Wstrict-overflow -fno-common -ffunction-sections -fdata-sections -Wall -Wextra -Wmissing-include-dirs -fno-delete-null-pointer-checks -fdiagnostics-color -Wstrict-prototypes -Wold-style-definition -gz -Wformat=2 -Wformat-overflow -Wformat-truncation -Wcast-align -include '/home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/riotbuild/riotbuild.h' -DRIOT_VERSION=\"2023.01-devel-2022.10-branch\" -DRIOT_VERSION_CODE=RIOT_VERSION_NUM\(2023,01,0,0\) -DMODULE_AUTO_INIT -DMODULE_BOARD -DMODULE_BOARD_COMMON_INIT -DMODULE_CC26XX_CC13XX -DMODULE_CC26XX_CC13XX_PERIPH -DMODULE_CORE -DMODULE_CORE_INIT -DMODULE_CORE_LIB -DMODULE_CORE_MSG -DMODULE_CORE_PANIC -DMODULE_CORE_THREAD -DMODULE_CORTEXM_COMMON -DMODULE_CORTEXM_COMMON_PERIPH -DMODULE_CORTEXM_FPU -DMODULE_CPU -DMODULE_DIV -DMODULE_LIBC -DMODULE_MALLOC_THREAD_SAFE -DMODULE_MPU_STACK_GUARD -DMODULE_NEWLIB -DMODULE_NEWLIB_NANO -DMODULE_NEWLIB_SYSCALLS_DEFAULT -DMODULE_PERIPH -DMODULE_PERIPH_COMMON -DMODULE_PERIPH_GPIO -DMODULE_PERIPH_INIT -DMODULE_PERIPH_INIT_GPIO -DMODULE_PERIPH_INIT_LED0 -DMODULE_PERIPH_INIT_LED1 -DMODULE_PERIPH_INIT_LED2 -DMODULE_PERIPH_INIT_LED3 -DMODULE_PERIPH_INIT_LED4 -DMODULE_PERIPH_INIT_LED5 -DMODULE_PERIPH_INIT_LED6 -DMODULE_PERIPH_INIT_LED7 -DMODULE_PERIPH_INIT_LEDS -DMODULE_PERIPH_INIT_PM -DMODULE_PERIPH_INIT_UART -DMODULE_PERIPH_PM -DMODULE_PERIPH_UART -DMODULE_STDIO_UART -DMODULE_SYS \
        | '/home/kad/Documents/Work/projects/RIOT/dist/tools/lazysponge/lazysponge.py'  '/home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/riotbuild/riotbuild.h.in'
sed -n -e '1i\
/* Generated file do not edit */' -e '/^#.*/ p' /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/riotbuild/riotbuild.h.in > /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/riotbuild/riotbuild.h
DIRS="/home/kad/Documents/Work/projects/RIOT/boards/common/init  " APPLICATION_BLOBS="" \
  "make" -C /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world -f /home/kad/Documents/Work/projects/RIOT/makefiles/application.inc.mk compile-commands
"make" -C /home/kad/Documents/Work/projects/RIOT/boards/cc1352-launchpad compile-commands
make[2]: Nothing to be done for 'compile-commands'.
"make" -C /home/kad/Documents/Work/projects/RIOT/boards/common/init compile-commands
make[2]: Nothing to be done for 'compile-commands'.
"make" -C /home/kad/Documents/Work/projects/RIOT/core compile-commands
make[2]: Nothing to be done for 'compile-commands'.
"make" -C /home/kad/Documents/Work/projects/RIOT/core/lib compile-commands
make[2]: Nothing to be done for 'compile-commands'.
"make" -C /home/kad/Documents/Work/projects/RIOT/cpu/cc26x2_cc13x2 compile-commands
"make" -C /home/kad/Documents/Work/projects/RIOT/cpu/cc26x2_cc13x2/periph compile-commands
make[3]: Nothing to be done for 'compile-commands'.
"make" -C /home/kad/Documents/Work/projects/RIOT/cpu/cc26xx_cc13xx compile-commands
"make" -C /home/kad/Documents/Work/projects/RIOT/cpu/cc26xx_cc13xx/periph compile-commands
make[4]: Nothing to be done for 'compile-commands'.
"make" -C /home/kad/Documents/Work/projects/RIOT/cpu/cortexm_common compile-commands
"make" -C /home/kad/Documents/Work/projects/RIOT/cpu/cortexm_common/periph compile-commands
make[4]: Nothing to be done for 'compile-commands'.
"make" -C /home/kad/Documents/Work/projects/RIOT/drivers compile-commands
"make" -C /home/kad/Documents/Work/projects/RIOT/drivers/periph_common compile-commands
make[3]: Nothing to be done for 'compile-commands'.
"make" -C /home/kad/Documents/Work/projects/RIOT/sys compile-commands
"make" -C /home/kad/Documents/Work/projects/RIOT/sys/auto_init compile-commands
make[3]: Nothing to be done for 'compile-commands'.
"make" -C /home/kad/Documents/Work/projects/RIOT/sys/div compile-commands
make[3]: Nothing to be done for 'compile-commands'.
"make" -C /home/kad/Documents/Work/projects/RIOT/sys/libc compile-commands
make[3]: Nothing to be done for 'compile-commands'.
"make" -C /home/kad/Documents/Work/projects/RIOT/sys/malloc_thread_safe compile-commands
make[3]: Nothing to be done for 'compile-commands'.
"make" -C /home/kad/Documents/Work/projects/RIOT/sys/newlib_syscalls_default compile-commands
make[3]: Nothing to be done for 'compile-commands'.
"make" -C /home/kad/Documents/Work/projects/RIOT/sys/stdio_uart compile-commands
make[3]: Nothing to be done for 'compile-commands'.
# replacement addresses https://github.com/rust-lang/rust-bindgen/issues/1555
/home/kad/Documents/Work/projects/RIOT/dist/tools/compile_commands/compile_commands.py --clang /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad \
  | sed 's/"riscv-none-embed"/"riscv32"/g' \
  | /home/kad/Documents/Work/projects/RIOT/dist/tools/lazysponge/lazysponge.py /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/cargo-compile-commands.json
command -v cargo >/dev/null || (/usr/bin/env echo -e \
        'Error: `cargo` command missing to build Rust modules. Please install as described on <https://doc.riot-os.org/using-rust.html>.' ;\
        exit 1)
command -v ${C2RUST:-c2rust} >/dev/null || (/usr/bin/env echo -e \
        'Error: `'${C2RUST:-c2rust}'` command missing to build Rust modules. Please install as described on <https://doc.riot-os.org/using-rust.html>.' ;\
        exit 1)
command -v rustup >/dev/null || (/usr/bin/env echo -e \
        'Error: `rustup` command missing. While it is not essential for building Rust modules, it is the only known way to install the target core libraries (or nightly for -Zbuild-std) needed to do so. If you do think that building should be possible, please edit this file, and file an issue about building Rust modules with the installation method you are using -- later checks in this file, based on rustup, will need to be adjusted for that.' ;\
        exit 1)
[ x"thumbv7em-none-eabihf" != x"" ] || (/usr/bin/env echo -e "Error: No RUST_TARGET was set for this platform. Set FEATURES_REQUIRED+=rust_target to catch this earlier."; exit 1)
# If distribution installed cargos ever grow the capacity to build RIOT, this absence of `rustup` might be OK. But that'd need them to both have cross tools around and cross core libs, none of which is currently the case.
# Ad grepping for "std": We're not *actually* checking for std but more for core -- but rust-stc-ARGET is the name of any standard libraries that'd be available for that target.
[ x"" != x"" ] || \
        (rustup component list --toolchain nightly-x86_64-unknown-linux-gnu --installed | grep 'rust-std-thumbv7em-none-eabihf$' --quiet) || \
        (/usr/bin/env echo -e \
        'Error: No Rust libraries are installed for the board'"'"'s CPU. Run\n    $ rustup target add thumbv7em-none-eabihf --toolchain nightly-x86_64-unknown-linux-gnu\nor set `CARGO_OPTIONS=-Zbuild-std=core`.'; \
        exit 1)
CC= CFLAGS= CPPFLAGS= CXXFLAGS= \
        RIOT_COMPILE_COMMANDS_JSON="/home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/cargo-compile-commands.json" \
        RIOT_USEMODULE="auto_init board board_common_init cc26xx_cc13xx cc26xx_cc13xx_periph core core_init core_lib core_msg core_panic core_thread cortexm_common cortexm_common_periph cortexm_fpu cpu div libc malloc_thread_safe mpu_stack_guard newlib newlib_nano newlib_syscalls_default periph periph_common periph_gpio periph_init periph_init_gpio periph_init_led0 periph_init_led1 periph_init_led2 periph_init_led3 periph_init_led4 periph_init_led5 periph_init_led6 periph_init_led7 periph_init_leds periph_init_pm periph_init_uart periph_pm periph_uart stdio_uart sys" \
        cargo +nightly-x86_64-unknown-linux-gnu \
                build \
                --target thumbv7em-none-eabihf \
                `if [ xrelease = xrelease ]; then echo --release; else if [ xrelease '!=' xdebug ]; then echo "--profile release"; fi; fi` \

DIRS="/home/kad/Documents/Work/projects/RIOT/boards/common/init  " APPLICATION_BLOBS="" \
  "make" -C /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world -f /home/kad/Documents/Work/projects/RIOT/makefiles/application.inc.mk
"make" -C /home/kad/Documents/Work/projects/RIOT/boards/cc1352-launchpad
:
"make" -C /home/kad/Documents/Work/projects/RIOT/boards/common/init
:
"make" -C /home/kad/Documents/Work/projects/RIOT/core
:
"make" -C /home/kad/Documents/Work/projects/RIOT/core/lib
:
"make" -C /home/kad/Documents/Work/projects/RIOT/cpu/cc26x2_cc13x2
"make" -C /home/kad/Documents/Work/projects/RIOT/cpu/cc26x2_cc13x2/periph
:
"make" -C /home/kad/Documents/Work/projects/RIOT/cpu/cc26xx_cc13xx
"make" -C /home/kad/Documents/Work/projects/RIOT/cpu/cc26xx_cc13xx/periph
:
:
"make" -C /home/kad/Documents/Work/projects/RIOT/cpu/cortexm_common
"make" -C /home/kad/Documents/Work/projects/RIOT/cpu/cortexm_common/periph
:
:
:
"make" -C /home/kad/Documents/Work/projects/RIOT/drivers
"make" -C /home/kad/Documents/Work/projects/RIOT/drivers/periph_common
:
:
"make" -C /home/kad/Documents/Work/projects/RIOT/sys
"make" -C /home/kad/Documents/Work/projects/RIOT/sys/auto_init
:
"make" -C /home/kad/Documents/Work/projects/RIOT/sys/div
:
"make" -C /home/kad/Documents/Work/projects/RIOT/sys/libc
:
"make" -C /home/kad/Documents/Work/projects/RIOT/sys/malloc_thread_safe
:
"make" -C /home/kad/Documents/Work/projects/RIOT/sys/newlib_syscalls_default
:
"make" -C /home/kad/Documents/Work/projects/RIOT/sys/stdio_uart
:
:
:
# Ensure no old object files persist. These would lead to duplicate
# symbols, or worse, lingering behaivor of XFA entries.
rm -rf /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/rust_hello_world/
mkdir -p /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/rust_hello_world/
# On cortex-m0 boards like airfy-beacon, the archive contains a
# bin/thumbv6m-none-eabi.o file; the directory must be present for
# ar to unpack it...
mkdir -p /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/rust_hello_world/bin/
cd /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/rust_hello_world/ && arm-none-eabi-ar x /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/target/thumbv7em-none-eabihf/release/librust_hello_world.a
# ... and move them back if any exist, careful to err if anything is duplicate
rmdir /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/rust_hello_world/bin/ || (mv -n /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/rust_hello_world/bin/* /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/rust_hello_world/ && rmdir /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/rust_hello_world/bin/)
arm-none-eabi-gcc $(find /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/rust_hello_world/ /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/application_hello-world/ /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/auto_init/ /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/board/ /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/board_common_init/ /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/cc26xx_cc13xx/ /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/cc26xx_cc13xx_periph/ /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/core/ /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/cortexm_common/ /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/cortexm_common_periph/ /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/cpu/ /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/div/ /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/libc/ /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/malloc_thread_safe/ /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/newlib_syscalls_default/ /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/periph/ /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/stdio_uart/ /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/sys/ /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/core_lib/ /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/periph_common/ -name "*.o" 2> /dev/null | sort)  -lm -L/home/kad/Documents/Work/projects/RIOT/cpu/cc26x2_cc13x2/ldscripts -L/home/kad/Documents/Work/projects/RIOT/cpu/cortexm_common/ldscripts -T/home/kad/Documents/Work/projects/RIOT/cpu/cc26xx_cc13xx/ldscripts/cc26xx_cc13xx.ld -Wl,--fatal-warnings -mcpu=cortex-m4 -mlittle-endian -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 -ggdb -g3 -Os -static -lgcc -nostartfiles -Wl,--gc-sections -Wl,--defsym=_rom_start_addr=0x00000000 -Wl,--defsym=_ram_start_addr=0x20000000 -Wl,--defsym=_rom_length=352K -Wl,--defsym=_ram_length=80K   -L/home/kad/Documents/Work/projects/RIOT/core/ldscripts -Wl,-wrap=malloc -Wl,-wrap=calloc -Wl,-wrap=realloc -Wl,-wrap=free -specs=nano.specs -lc -Wl,-Map=/home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/hello-world.map -o /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/hello-world.elf
/usr/bin/arm-none-eabi-objcopy  -Obinary /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/hello-world.elf /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/hello-world.bin
arm-none-eabi-size  /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/hello-world.elf
[ -z "" ] || \
(/usr/bin/env echo -e "Error - using unknown modules: " && false)
rm -f /home/kad/Documents/Work/projects/RIOT/examples/rust-hello-world/bin/cc1352-launchpad/.test
if grep -q -i "^ $" /home/kad/Documents/Work/projects/RIOT/dist/usb_id_testing; then \
        /usr/bin/env echo -e "Private testing pid.codes USB VID/PID used!, do not use it outside of test environments!" 1>&2 ; \
        /usr/bin/env echo -e "MUST NOT be used on any device redistributed, sold or manufactured, VID/PID is not unique!" 1>&2 ; \
fi
if [ " " = "1209 7d00" ]; then \
        /usr/bin/env echo -e "RIOT standard peripherals code (1209/7D00) cannot be set explicitly." 1>&2 ; \
        /usr/bin/env echo -e "Unset USB_VID / USB_PID for the code to be picked automatically, or set" 1>&2 ; \
        /usr/bin/env echo -e "them to \${USB_VID_TESTING} / \${USB_PID_TESTING} during development." 1>&2 ; \
        exit 1; \
fi

To be able to compile the code I had to remove -Wl,--fatal-warnings from makefiles/arch/cortexm.inc.mk, which I think is not intended solution.

Is this known problem?

maribu commented 1 year ago

Sorry for the long latency. Would you mind to paste the output of

$ make print-versions

? Could you also retry again with the current master of RIOT? I think we may have merged a PR that fixes the issue in the meantime without noticing it is relevant to this issue.

maribu commented 1 year ago

Since the reporter is unresponsive, I'm closing this. Building rust apps in master works fine ... almost. Once https://github.com/RIOT-OS/RIOT/pull/19602 is in it should indeed work again.