rtel wrote on Wednesday, September 28, 2011:
vTaskStartScheduler() is defined in tasks.c, so the first thing to do is ensure that tasks.c is included in the build. I assume it is, so the next question would be, how is it being build? The MBED code is C++, which means, and to call C code you must do two things - first ensure that tasks.c is being built as C and not C++, and second ensure that the function is declared extern “C”. The FreeRTOS header files take care of the second part of that already.
You could alternatively build the FreeRTOS code as C++, but that would involve removing some of the data hiding it employs (i.e. changing the code). There are lots of threads about on this topic, and it is a bit outside of my core knowledge.