Beginner problem: Building failure (CW303)


I’m facing issues in the initialization of a CW-Lite embedding a XMEGA target.
After installing the required libraries on Windows (avr–gcc, MinGW, etc…) I tried to follow the “Connecting to Hardware” Jupyter tutorials. (One of the prerequiste is to go through the “ChipWhisperer Setup Test” which went fine).
Under the ‘Building and Uploading Firmaware’ section, first step is to build the firmware according to the used platform:

cd …/hardware/victims/firmware/simpleserial-base/

When I run this command without specifying the target, a list of platforms appears as mentioned in the tutorial. However, when I add the target (CW303 if I’m right) I get a strange output:

C:\ChipWhisperer5_64\chipwhisperer\hardware\victims\firmware\simpleserial-base>make PLATFORM=CW303 CRYPTO_TARGET=NONE
SS_VER set to SS_VER_1_1
rm -f – simpleserial-base-CW303.hex
process_begin: CreateProcess(NULL, rm -f – simpleserial-base-CW303.hex, …) failed.
make (e=2): Le fichier spécifié est introuvable. (The specified file cannot be found)
…/./ recipe for target ‘clean_objs’ failed
make: *** [clean_objs] Error 2

I tried to dive inside related makefiles but I didn’t find how to fix that. I don’t really understand what is wrong and how I can fix it. If someone has an idea and can help me, it would be great.

In advance thanks.


The -f flag there should prevent an error being reported from missing files. Can you post the path given by where rm?


Hi Alex,

Thank you for your quick answer!

When using -f flag with the make command, I obtain this output:

make: PLATFORM=CW303: No such file or directory
make: *** No rule to make target ‘PLATFORM=CW303’. Stop.

Moreover, when I use command where rm I have a simple info line saying that it’s impossible to find files for specified model(s).

Which files is it referring to?


Ah, sorry, that -f flag is for rm and is already in the associated makefile. I suspect there’s something wrong with your version of rm. where rm should tell you where rm is and should help us know if it’s the correct version of rm.


Hi Alex,

I’ve been able to fix the problem. You were right regarding the ‘where rm’ command.
I was missing ‘MinGW\msys\1.0\bin’ in my environment variables.

When I added it, ‘where rm’ command returned the path of rm.exe belonging to MinGW\msys. Moreover the building of the firmware went well with that.

Thank you for your help!


1 Like

Thank you. :heart: :heart: