Cannot compile Win32-MinGW Demo

HI
I just download the demo in eclipse and once trying to compile this is what I get
D:\FreeRTOS\FreeRTOS\Demo\WIN32-MingW/FreeRTOSConfig.h:156:26: fatal error: trcRecorder.h: No such file or directory

  • #include “trcRecorder.h”*
    Can someone help me

thanks
Christian

looks like your code sample assumes tracealyzer. You will need to download that from percepios site or choose a different code sample…

Where did you download the project from? If you cloned the FreeRTOS/FreeRTOS repository, Percepio’s tracelyzer recorder library is in the repo - FreeRTOS/FreeRTOS-Plus/Source/FreeRTOS-Plus-Trace at main · FreeRTOS/FreeRTOS · GitHub

Did you make sure “copy project into workspace” was not checked when you imported the project into Eclipse?

I just tried building a clean copy of the project and was successful, albeit with the following warning:

..\..\..\Source\portable\MSVC-MingW\port.c: In function 'pxPortInitialiseStack':
..\..\..\Source\portable\MSVC-MingW\port.c:249:60: warning: cast between incompatible function types from 'TaskFunction_t' {aka 'void (*)(void *)'} to 'DWORD (__attribute__((stdcall)) *)(void *)' [-Wcast-function-type]
  249 |  pxThreadState->pvThread = CreateThread( NULL, xStackSize, ( LPTHREAD_START_ROUTINE ) pxCode, pvParameters, CREATE_SUSPENDED | STACK_SIZE_PARAM_IS_A_RESERVATION, NULL );
      |                                                            

Now the link cannot access , where can I find the Percepio’s tracelyzer recorder library?

I got the same error (cannot open source file “trcRecorder.h”) when clone from this github FreeRTOS

Here is it - GitHub - percepio/TraceRecorderSource.

But you should not need to download it explicitly. Did you clone with submodules? Can you share the command that you used to clone the FreeRTOS source? Also, please share the complete error log.

It looks like the repo was modified a bit since that last link was posted. You can find the library here and the git submodule here. The submodule will give you the exact commit which is being used.

You’ll want to use either the --recurse-submodules flag when cloning the repo (example: git clone https://github.com/FreeRTOS/FreeRTOS.git --recurse-submodules) or you can use this submodule update command to clone down out the submodules after you’ve cloned (git submodule update --init --recursive).

If you don’t clone the submodules then you should see the FreeRTOS-Plus/Source/FreeRTOS-Plus-Trace directory as empty which would explain why trcRecorder.h cannot be found.