Can't build SimpleSerial-base CWLite32


#1

So I’m attempting to follow along with the B1 tutorial and do the SimpleSerial-base project and there seems to be an issue.

I ran this according to the ARM target instructions

$ make PLATFORM=CWLITEARM CRYPTO_TARGET=TINYAES128C
rm -f – simpleserial-base-CWLITEARM.hex
rm -f – simpleserial-base-CWLITEARM.eep
rm -f – simpleserial-base-CWLITEARM.cof
rm -f – simpleserial-base-CWLITEARM.elf
rm -f – simpleserial-base-CWLITEARM.map
rm -f – simpleserial-base-CWLITEARM.sym
rm -f – simpleserial-base-CWLITEARM.lss
rm -f – objdir/.o
rm -f – objdir/
.lst
rm -f – simpleserial-base.s simpleserial.s stm32f3_hal.s stm32f3_hal_lowlevel.s stm32f3_sysmem.s aes.s aes-independant.s
rm -f – simpleserial-base.d simpleserial.d stm32f3_hal.d stm32f3_hal_lowlevel.d stm32f3_sysmem.d aes.d aes-independant.d
rm -f – simpleserial-base.i simpleserial.i stm32f3_hal.i stm32f3_hal_lowlevel.i stm32f3_sysmem.i aes.i aes-independant.i
mkdir objdir
mkdir .dep
.
-------- begin --------
arm-none-eabi-gcc (15:6.3.1+svn253039-1build1) 6.3.1 20170620
Copyright © 2016 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

.
Compiling C: simpleserial-base.c
arm-none-eabi-gcc -c -mcpu=cortex-m4 -I. -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 -fmessage-length=0 -ffunction-sections -gdwarf-2 -DSS_VER=SS_VER_1_1 -DSTM32F303xC -DSTM32F3 -DSTM32 -DDEBUG -DHAL_TYPE=HAL_stm32f3 -DPLATFORM=CWLITEARM -DTINYAES128C -DF_CPU=7372800UL -Os -funsigned-char -funsigned-bitfields -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=objdir/simpleserial-base.lst -I…/./simpleserial/ -I…/./hal -I…/./hal/stm32f3 -I…/./hal/stm32f3/CMSIS -I…/./hal/stm32f3/CMSIS/core -I…/./hal/stm32f3/CMSIS/device -I…/./hal/stm32f4/Legacy -I…/./crypto/ -I…/./crypto/tiny-AES128-C -std=gnu99 -MMD -MP -MF .dep/simpleserial-base.o.d simpleserial-base.c -o objdir/simpleserial-base.o
.
Compiling C: …/./simpleserial/simpleserial.c
arm-none-eabi-gcc -c -mcpu=cortex-m4 -I. -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 -fmessage-length=0 -ffunction-sections -gdwarf-2 -DSS_VER=SS_VER_1_1 -DSTM32F303xC -DSTM32F3 -DSTM32 -DDEBUG -DHAL_TYPE=HAL_stm32f3 -DPLATFORM=CWLITEARM -DTINYAES128C -DF_CPU=7372800UL -Os -funsigned-char -funsigned-bitfields -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=objdir/simpleserial.lst -I…/./simpleserial/ -I…/./hal -I…/./hal/stm32f3 -I…/./hal/stm32f3/CMSIS -I…/./hal/stm32f3/CMSIS/core -I…/./hal/stm32f3/CMSIS/device -I…/./hal/stm32f4/Legacy -I…/./crypto/ -I…/./crypto/tiny-AES128-C -std=gnu99 -MMD -MP -MF .dep/simpleserial.o.d …/./simpleserial/simpleserial.c -o objdir/simpleserial.o
.
Compiling C: …/./hal/stm32f3/stm32f3_hal.c
arm-none-eabi-gcc -c -mcpu=cortex-m4 -I. -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 -fmessage-length=0 -ffunction-sections -gdwarf-2 -DSS_VER=SS_VER_1_1 -DSTM32F303xC -DSTM32F3 -DSTM32 -DDEBUG -DHAL_TYPE=HAL_stm32f3 -DPLATFORM=CWLITEARM -DTINYAES128C -DF_CPU=7372800UL -Os -funsigned-char -funsigned-bitfields -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=objdir/stm32f3_hal.lst -I…/./simpleserial/ -I…/./hal -I…/./hal/stm32f3 -I…/./hal/stm32f3/CMSIS -I…/./hal/stm32f3/CMSIS/core -I…/./hal/stm32f3/CMSIS/device -I…/./hal/stm32f4/Legacy -I…/./crypto/ -I…/./crypto/tiny-AES128-C -std=gnu99 -MMD -MP -MF .dep/stm32f3_hal.o.d …/./hal/stm32f3/stm32f3_hal.c -o objdir/stm32f3_hal.o
In file included from …/./hal/stm32f3/stm32f3_hal.c:3:0:
…/./hal/stm32f3/stm32f3_hal_lowlevel.h:108:0: warning: “STM32F303xC” redefined
#define STM32F303xC

:0:0: note: this is the location of the previous definition
.
Compiling C: …/./hal/stm32f3/stm32f3_hal_lowlevel.c
arm-none-eabi-gcc -c -mcpu=cortex-m4 -I. -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 -fmessage-length=0 -ffunction-sections -gdwarf-2 -DSS_VER=SS_VER_1_1 -DSTM32F303xC -DSTM32F3 -DSTM32 -DDEBUG -DHAL_TYPE=HAL_stm32f3 -DPLATFORM=CWLITEARM -DTINYAES128C -DF_CPU=7372800UL -Os -funsigned-char -funsigned-bitfields -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=objdir/stm32f3_hal_lowlevel.lst -I…/./simpleserial/ -I…/./hal -I…/./hal/stm32f3 -I…/./hal/stm32f3/CMSIS -I…/./hal/stm32f3/CMSIS/core -I…/./hal/stm32f3/CMSIS/device -I…/./hal/stm32f4/Legacy -I…/./crypto/ -I…/./crypto/tiny-AES128-C -std=gnu99 -MMD -MP -MF .dep/stm32f3_hal_lowlevel.o.d …/./hal/stm32f3/stm32f3_hal_lowlevel.c -o objdir/stm32f3_hal_lowlevel.o
In file included from …/./hal/stm32f3/stm32f3_hal_lowlevel.c:39:0:
…/./hal/stm32f3/stm32f3_hal_lowlevel.h:108:0: warning: “STM32F303xC” redefined
#define STM32F303xC

:0:0: note: this is the location of the previous definition
…/./hal/stm32f3/stm32f3_hal_lowlevel.c:47:0: warning: “assert_param” redefined
#define assert_param(expr) ((void)0U)

In file included from …/./hal/stm32f3/stm32f3_hal_lowlevel.c:38:0:
…/./hal/stm32f3/stm32f3_hal.h:21:0: note: this is the location of the previous definition
#define assert_param(expr) ((void)0)

.
Compiling C: …/./hal/stm32f3/stm32f3_sysmem.c
arm-none-eabi-gcc -c -mcpu=cortex-m4 -I. -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 -fmessage-length=0 -ffunction-sections -gdwarf-2 -DSS_VER=SS_VER_1_1 -DSTM32F303xC -DSTM32F3 -DSTM32 -DDEBUG -DHAL_TYPE=HAL_stm32f3 -DPLATFORM=CWLITEARM -DTINYAES128C -DF_CPU=7372800UL -Os -funsigned-char -funsigned-bitfields -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=objdir/stm32f3_sysmem.lst -I…/./simpleserial/ -I…/./hal -I…/./hal/stm32f3 -I…/./hal/stm32f3/CMSIS -I…/./hal/stm32f3/CMSIS/core -I…/./hal/stm32f3/CMSIS/device -I…/./hal/stm32f4/Legacy -I…/./crypto/ -I…/./crypto/tiny-AES128-C -std=gnu99 -MMD -MP -MF .dep/stm32f3_sysmem.o.d …/./hal/stm32f3/stm32f3_sysmem.c -o objdir/stm32f3_sysmem.o
.
Compiling C: …/./crypto/tiny-AES128-C/aes.c
arm-none-eabi-gcc -c -mcpu=cortex-m4 -I. -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 -fmessage-length=0 -ffunction-sections -gdwarf-2 -DSS_VER=SS_VER_1_1 -DSTM32F303xC -DSTM32F3 -DSTM32 -DDEBUG -DHAL_TYPE=HAL_stm32f3 -DPLATFORM=CWLITEARM -DTINYAES128C -DF_CPU=7372800UL -Os -funsigned-char -funsigned-bitfields -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=objdir/aes.lst -I…/./simpleserial/ -I…/./hal -I…/./hal/stm32f3 -I…/./hal/stm32f3/CMSIS -I…/./hal/stm32f3/CMSIS/core -I…/./hal/stm32f3/CMSIS/device -I…/./hal/stm32f4/Legacy -I…/./crypto/ -I…/./crypto/tiny-AES128-C -std=gnu99 -MMD -MP -MF .dep/aes.o.d …/./crypto/tiny-AES128-C/aes.c -o objdir/aes.o
.
Compiling C: …/./crypto/aes-independant.c
arm-none-eabi-gcc -c -mcpu=cortex-m4 -I. -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 -fmessage-length=0 -ffunction-sections -gdwarf-2 -DSS_VER=SS_VER_1_1 -DSTM32F303xC -DSTM32F3 -DSTM32 -DDEBUG -DHAL_TYPE=HAL_stm32f3 -DPLATFORM=CWLITEARM -DTINYAES128C -DF_CPU=7372800UL -Os -funsigned-char -funsigned-bitfields -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=objdir/aes-independant.lst -I…/./simpleserial/ -I…/./hal -I…/./hal/stm32f3 -I…/./hal/stm32f3/CMSIS -I…/./hal/stm32f3/CMSIS/core -I…/./hal/stm32f3/CMSIS/device -I…/./hal/stm32f4/Legacy -I…/./crypto/ -I…/./crypto/tiny-AES128-C -std=gnu99 -MMD -MP -MF .dep/aes-independant.o.d …/./crypto/aes-independant.c -o objdir/aes-independant.o
.
Assembling: …/./hal/stm32f3/stm32f3_startup.S
arm-none-eabi-gcc -c -mcpu=cortex-m4 -I. -x assembler-with-cpp -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 -fmessage-length=0 -ffunction-sections -DF_CPU=7372800 -Wa,-gstabs,-adhlns=objdir/stm32f3_startup.lst -I…/./simpleserial/ -I…/./hal -I…/./hal/stm32f3 -I…/./hal/stm32f3/CMSIS -I…/./hal/stm32f3/CMSIS/core -I…/./hal/stm32f3/CMSIS/device -I…/./hal/stm32f4/Legacy -I…/./crypto/ -I…/./crypto/tiny-AES128-C …/./hal/stm32f3/stm32f3_startup.S -o objdir/stm32f3_startup.o
.
Linking: simpleserial-base-CWLITEARM.elf
arm-none-eabi-gcc -mcpu=cortex-m4 -I. -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 -fmessage-length=0 -ffunction-sections -gdwarf-2 -DSS_VER=SS_VER_1_1 -DSTM32F303xC -DSTM32F3 -DSTM32 -DDEBUG -DHAL_TYPE=HAL_stm32f3 -DPLATFORM=CWLITEARM -DTINYAES128C -DF_CPU=7372800UL -Os -funsigned-char -funsigned-bitfields -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=objdir/simpleserial-base.o -I…/./simpleserial/ -I…/./hal -I…/./hal/stm32f3 -I…/./hal/stm32f3/CMSIS -I…/./hal/stm32f3/CMSIS/core -I…/./hal/stm32f3/CMSIS/device -I…/./hal/stm32f4/Legacy -I…/./crypto/ -I…/./crypto/tiny-AES128-C -std=gnu99 -MMD -MP -MF .dep/simpleserial-base-CWLITEARM.elf.d objdir/simpleserial-base.o objdir/simpleserial.o objdir/stm32f3_hal.o objdir/stm32f3_hal_lowlevel.o objdir/stm32f3_sysmem.o objdir/aes.o objdir/aes-independant.o objdir/stm32f3_startup.o --output simpleserial-base-CWLITEARM.elf --specs=nano.specs -T …/./hal/stm32f3/LinkerScript.ld -Wl,–gc-sections -lm -Wl,-Map=simpleserial-base-CWLITEARM.map,–cref -lm
/usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/bin/ld: error: /usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/lib/crt0.o: Conflicting CPU architectures 13/1
/usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/bin/ld: failed to merge target specific data of file /usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/lib/crt0.o
/usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/bin/ld: error: simpleserial-base-CWLITEARM.elf uses VFP register arguments, /usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/lib/libg_nano.a(lib_a-atexit.o) does not
/usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/bin/ld: failed to merge target specific data of file /usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/lib/libg_nano.a(lib_a-atexit.o)
/usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/bin/ld: error: simpleserial-base-CWLITEARM.elf uses VFP register arguments, /usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/lib/libg_nano.a(lib_a-errno.o) does not
/usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/bin/ld: failed to merge target specific data of file /usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/lib/libg_nano.a(lib_a-errno.o)
/usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/bin/ld: error: simpleserial-base-CWLITEARM.elf uses VFP register arguments, /usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/lib/libg_nano.a(lib_a-exit.o) does not
/usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/bin/ld: failed to merge target specific data of file /usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/lib/libg_nano.a(lib_a-exit.o)
/usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/bin/ld: error: simpleserial-base-CWLITEARM.elf uses VFP register arguments, /usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/lib/libg_nano.a(lib_a-fini.o) does not
/usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/bin/ld: failed to merge target specific data of file /usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/lib/libg_nano.a(lib_a-fini.o)
/usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/bin/ld: error: simpleserial-base-CWLITEARM.elf uses VFP register arguments, /usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/lib/libg_nano.a(lib_a-impure.o) does not
/usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/bin/ld: failed to merge target specific data of file /usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/lib/libg_nano.a(lib_a-impure.o)
/usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/bin/ld: error: simpleserial-base-CWLITEARM.elf uses VFP register arguments, /usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/lib/libg_nano.a(lib_a-init.o) does not
/usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/bin/ld: failed to merge target specific data of file /usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/lib/libg_nano.a(lib_a-init.o)
/usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/bin/ld: error: simpleserial-base-CWLITEARM.elf uses VFP register arguments, /usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/lib/libg_nano.a(lib_a-memset.o) does not
/usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/bin/ld: failed to merge target specific data of file /usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/lib/libg_nano.a(lib_a-memset.o)
/usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/bin/ld: error: simpleserial-base-CWLITEARM.elf uses VFP register arguments, /usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/lib/libg_nano.a(lib_a-__atexit.o) does not
/usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/bin/ld: failed to merge target specific data of file /usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/lib/libg_nano.a(lib_a-__atexit.o)
/usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/bin/ld: error: simpleserial-base-CWLITEARM.elf uses VFP register arguments, /usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/lib/libg_nano.a(lib_a-__call_atexit.o) does not
/usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/bin/ld: failed to merge target specific data of file /usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/lib/libg_nano.a(lib_a-__call_atexit.o)
collect2: error: ld returned 1 exit status
…/./Makefile.inc:471: recipe for target ‘simpleserial-base-CWLITEARM.elf’ failed
make: *** [simpleserial-base-CWLITEARM.elf] Error 1

After a couple more attempts with the same result I tried building it using the XMEGA guide and it worked just fine

$ make PLATFORM=CW303
rm -f – simpleserial-base-CW303.hex
rm -f – simpleserial-base-CW303.eep
rm -f – simpleserial-base-CW303.cof
rm -f – simpleserial-base-CW303.elf
rm -f – simpleserial-base-CW303.map
rm -f – simpleserial-base-CW303.sym
rm -f – simpleserial-base-CW303.lss
rm -f – objdir/.o
rm -f – objdir/
.lst
rm -f – simpleserial-base.s simpleserial.s XMEGA_AES_driver.s uart.s usart_driver.s xmega_hal.s aes-independant.s aes_enc.s aes_keyschedule.s aes_sbox.s aes128_enc.s
rm -f – simpleserial-base.d simpleserial.d XMEGA_AES_driver.d uart.d usart_driver.d xmega_hal.d aes-independant.d aes_enc.d aes_keyschedule.d aes_sbox.d aes128_enc.d
rm -f – simpleserial-base.i simpleserial.i XMEGA_AES_driver.i uart.i usart_driver.i xmega_hal.i aes-independant.i aes_enc.i aes_keyschedule.i aes_sbox.i aes128_enc.i
mkdir objdir
mkdir .dep
.
-------- begin --------
avr-gcc (GCC) 5.4.0
Copyright © 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

.
Compiling C: simpleserial-base.c
avr-gcc -c -mmcu=atxmega128d3 -I. -fpack-struct -gdwarf-2 -DSS_VER=SS_VER_1_1 -DHAL_TYPE=HAL_xmega -DPLATFORM=CW303 -DAVRCRYPTOLIB -DF_CPU=7372800UL -Os -funsigned-char -funsigned-bitfields -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=objdir/simpleserial-base.lst -I…/./simpleserial/ -I…/./hal -I…/./hal/xmega -I…/./crypto/ -I…/./crypto/avrcryptolib//aes -I…/./crypto/avrcryptolib//gf256mul -std=gnu99 -MMD -MP -MF .dep/simpleserial-base.o.d simpleserial-base.c -o objdir/simpleserial-base.o
.
Compiling C: …/./simpleserial/simpleserial.c
avr-gcc -c -mmcu=atxmega128d3 -I. -fpack-struct -gdwarf-2 -DSS_VER=SS_VER_1_1 -DHAL_TYPE=HAL_xmega -DPLATFORM=CW303 -DAVRCRYPTOLIB -DF_CPU=7372800UL -Os -funsigned-char -funsigned-bitfields -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=objdir/simpleserial.lst -I…/./simpleserial/ -I…/./hal -I…/./hal/xmega -I…/./crypto/ -I…/./crypto/avrcryptolib//aes -I…/./crypto/avrcryptolib//gf256mul -std=gnu99 -MMD -MP -MF .dep/simpleserial.o.d …/./simpleserial/simpleserial.c -o objdir/simpleserial.o
.
Compiling C: …/./hal/xmega/XMEGA_AES_driver.c
avr-gcc -c -mmcu=atxmega128d3 -I. -fpack-struct -gdwarf-2 -DSS_VER=SS_VER_1_1 -DHAL_TYPE=HAL_xmega -DPLATFORM=CW303 -DAVRCRYPTOLIB -DF_CPU=7372800UL -Os -funsigned-char -funsigned-bitfields -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=objdir/XMEGA_AES_driver.lst -I…/./simpleserial/ -I…/./hal -I…/./hal/xmega -I…/./crypto/ -I…/./crypto/avrcryptolib//aes -I…/./crypto/avrcryptolib//gf256mul -std=gnu99 -MMD -MP -MF .dep/XMEGA_AES_driver.o.d …/./hal/xmega/XMEGA_AES_driver.c -o objdir/XMEGA_AES_driver.o
.
Compiling C: …/./hal/xmega/uart.c
avr-gcc -c -mmcu=atxmega128d3 -I. -fpack-struct -gdwarf-2 -DSS_VER=SS_VER_1_1 -DHAL_TYPE=HAL_xmega -DPLATFORM=CW303 -DAVRCRYPTOLIB -DF_CPU=7372800UL -Os -funsigned-char -funsigned-bitfields -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=objdir/uart.lst -I…/./simpleserial/ -I…/./hal -I…/./hal/xmega -I…/./crypto/ -I…/./crypto/avrcryptolib//aes -I…/./crypto/avrcryptolib//gf256mul -std=gnu99 -MMD -MP -MF .dep/uart.o.d …/./hal/xmega/uart.c -o objdir/uart.o
.
Compiling C: …/./hal/xmega/usart_driver.c
avr-gcc -c -mmcu=atxmega128d3 -I. -fpack-struct -gdwarf-2 -DSS_VER=SS_VER_1_1 -DHAL_TYPE=HAL_xmega -DPLATFORM=CW303 -DAVRCRYPTOLIB -DF_CPU=7372800UL -Os -funsigned-char -funsigned-bitfields -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=objdir/usart_driver.lst -I…/./simpleserial/ -I…/./hal -I…/./hal/xmega -I…/./crypto/ -I…/./crypto/avrcryptolib//aes -I…/./crypto/avrcryptolib//gf256mul -std=gnu99 -MMD -MP -MF .dep/usart_driver.o.d …/./hal/xmega/usart_driver.c -o objdir/usart_driver.o
.
Compiling C: …/./hal/xmega/xmega_hal.c
avr-gcc -c -mmcu=atxmega128d3 -I. -fpack-struct -gdwarf-2 -DSS_VER=SS_VER_1_1 -DHAL_TYPE=HAL_xmega -DPLATFORM=CW303 -DAVRCRYPTOLIB -DF_CPU=7372800UL -Os -funsigned-char -funsigned-bitfields -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=objdir/xmega_hal.lst -I…/./simpleserial/ -I…/./hal -I…/./hal/xmega -I…/./crypto/ -I…/./crypto/avrcryptolib//aes -I…/./crypto/avrcryptolib//gf256mul -std=gnu99 -MMD -MP -MF .dep/xmega_hal.o.d …/./hal/xmega/xmega_hal.c -o objdir/xmega_hal.o
.
Compiling C: …/./crypto/aes-independant.c
avr-gcc -c -mmcu=atxmega128d3 -I. -fpack-struct -gdwarf-2 -DSS_VER=SS_VER_1_1 -DHAL_TYPE=HAL_xmega -DPLATFORM=CW303 -DAVRCRYPTOLIB -DF_CPU=7372800UL -Os -funsigned-char -funsigned-bitfields -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=objdir/aes-independant.lst -I…/./simpleserial/ -I…/./hal -I…/./hal/xmega -I…/./crypto/ -I…/./crypto/avrcryptolib//aes -I…/./crypto/avrcryptolib//gf256mul -std=gnu99 -MMD -MP -MF .dep/aes-independant.o.d …/./crypto/aes-independant.c -o objdir/aes-independant.o
.
Compiling C: …/./crypto/avrcryptolib//aes/aes_enc.c
avr-gcc -c -mmcu=atxmega128d3 -I. -fpack-struct -gdwarf-2 -DSS_VER=SS_VER_1_1 -DHAL_TYPE=HAL_xmega -DPLATFORM=CW303 -DAVRCRYPTOLIB -DF_CPU=7372800UL -Os -funsigned-char -funsigned-bitfields -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=objdir/aes_enc.lst -I…/./simpleserial/ -I…/./hal -I…/./hal/xmega -I…/./crypto/ -I…/./crypto/avrcryptolib//aes -I…/./crypto/avrcryptolib//gf256mul -std=gnu99 -MMD -MP -MF .dep/aes_enc.o.d …/./crypto/avrcryptolib//aes/aes_enc.c -o objdir/aes_enc.o
.
Compiling C: …/./crypto/avrcryptolib//aes/aes_keyschedule.c
avr-gcc -c -mmcu=atxmega128d3 -I. -fpack-struct -gdwarf-2 -DSS_VER=SS_VER_1_1 -DHAL_TYPE=HAL_xmega -DPLATFORM=CW303 -DAVRCRYPTOLIB -DF_CPU=7372800UL -Os -funsigned-char -funsigned-bitfields -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=objdir/aes_keyschedule.lst -I…/./simpleserial/ -I…/./hal -I…/./hal/xmega -I…/./crypto/ -I…/./crypto/avrcryptolib//aes -I…/./crypto/avrcryptolib//gf256mul -std=gnu99 -MMD -MP -MF .dep/aes_keyschedule.o.d …/./crypto/avrcryptolib//aes/aes_keyschedule.c -o objdir/aes_keyschedule.o
.
Compiling C: …/./crypto/avrcryptolib//aes/aes_sbox.c
avr-gcc -c -mmcu=atxmega128d3 -I. -fpack-struct -gdwarf-2 -DSS_VER=SS_VER_1_1 -DHAL_TYPE=HAL_xmega -DPLATFORM=CW303 -DAVRCRYPTOLIB -DF_CPU=7372800UL -Os -funsigned-char -funsigned-bitfields -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=objdir/aes_sbox.lst -I…/./simpleserial/ -I…/./hal -I…/./hal/xmega -I…/./crypto/ -I…/./crypto/avrcryptolib//aes -I…/./crypto/avrcryptolib//gf256mul -std=gnu99 -MMD -MP -MF .dep/aes_sbox.o.d …/./crypto/avrcryptolib//aes/aes_sbox.c -o objdir/aes_sbox.o
.
Compiling C: …/./crypto/avrcryptolib//aes/aes128_enc.c
avr-gcc -c -mmcu=atxmega128d3 -I. -fpack-struct -gdwarf-2 -DSS_VER=SS_VER_1_1 -DHAL_TYPE=HAL_xmega -DPLATFORM=CW303 -DAVRCRYPTOLIB -DF_CPU=7372800UL -Os -funsigned-char -funsigned-bitfields -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=objdir/aes128_enc.lst -I…/./simpleserial/ -I…/./hal -I…/./hal/xmega -I…/./crypto/ -I…/./crypto/avrcryptolib//aes -I…/./crypto/avrcryptolib//gf256mul -std=gnu99 -MMD -MP -MF .dep/aes128_enc.o.d …/./crypto/avrcryptolib//aes/aes128_enc.c -o objdir/aes128_enc.o
.
Assembling: …/./crypto/avrcryptolib//gf256mul/gf256mul.S
avr-gcc -c -mmcu=atxmega128d3 -I. -x assembler-with-cpp -DF_CPU=7372800 -Wa,-gstabs,-adhlns=objdir/gf256mul.lst -I…/./simpleserial/ -I…/./hal -I…/./hal/xmega -I…/./crypto/ -I…/./crypto/avrcryptolib//aes -I…/./crypto/avrcryptolib//gf256mul …/./crypto/avrcryptolib//gf256mul/gf256mul.S -o objdir/gf256mul.o
.
Linking: simpleserial-base-CW303.elf
avr-gcc -mmcu=atxmega128d3 -I. -fpack-struct -gdwarf-2 -DSS_VER=SS_VER_1_1 -DHAL_TYPE=HAL_xmega -DPLATFORM=CW303 -DAVRCRYPTOLIB -DF_CPU=7372800UL -Os -funsigned-char -funsigned-bitfields -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=objdir/simpleserial-base.o -I…/./simpleserial/ -I…/./hal -I…/./hal/xmega -I…/./crypto/ -I…/./crypto/avrcryptolib//aes -I…/./crypto/avrcryptolib//gf256mul -std=gnu99 -MMD -MP -MF .dep/simpleserial-base-CW303.elf.d objdir/simpleserial-base.o objdir/simpleserial.o objdir/XMEGA_AES_driver.o objdir/uart.o objdir/usart_driver.o objdir/xmega_hal.o objdir/aes-independant.o objdir/aes_enc.o objdir/aes_keyschedule.o objdir/aes_sbox.o objdir/aes128_enc.o objdir/gf256mul.o --output simpleserial-base-CW303.elf -Wl,-Map=simpleserial-base-CW303.map,–cref -lm
.
Creating load file for Flash: simpleserial-base-CW303.hex
avr-objcopy -O ihex -R .eeprom -R .fuse -R .lock -R .signature simpleserial-base-CW303.elf simpleserial-base-CW303.hex
.
Creating load file for EEPROM: simpleserial-base-CW303.eep
avr-objcopy -j .eeprom --set-section-flags=.eeprom=“alloc,load”
–change-section-lma .eeprom=0 --no-change-warnings -O ihex simpleserial-base-CW303.elf simpleserial-base-CW303.eep || exit 0
.
Creating Extended Listing: simpleserial-base-CW303.lss
avr-objdump -h -S -z simpleserial-base-CW303.elf > simpleserial-base-CW303.lss
.
Creating Symbol Table: simpleserial-base-CW303.sym
avr-nm -n simpleserial-base-CW303.elf > simpleserial-base-CW303.sym
Size after:
text data bss dec hex filename
3102 16 228 3346 d12 simpleserial-base-CW303.elf
±-------------------------------------------------------

  • Built for platform CW-Lite XMEGA
    ±-------------------------------------------------------

Anyone have ideas on what’s going on here?


#2

Hi Tim

Try opening chipwhisperer/harware/victims/firmware/hal/stm32f3/Makefile.stm32f3 and changing -mfloat-abi=hard to -mfloat-abi=soft.

Basically, it looks like the Arm compiler on your machine doesn’t have libraries for hardware floating point. We don’t use floating point anywhere IIRC, so changing it to be software floating point shouldn’t be an issue.

Alex


#3

Woops completely forgot to update you but your solution worked. Thanks :+1:

Now that I know its on my end I’m going to get the libraries sorted out to avoid future unnecessary issues lol


#4

Good to hear!

Let us know if you run into any more issues.