[fpc-devel] Problems building xtensa-freertos RTL in trunk

Michael Ring mail at michael-ring.org
Sun Apr 19 17:25:47 CEST 2020

I have uploaded  my patch to:


I have left out the generated Makefiles to keep the patch (kind of) 

I am able to build the target like this:

make -j clean buildbase CROSSINSTALL=1 OS_TARGET=freertos CPU_TARGET=arm 
SUBARCH=armv7em CROSSOPT="-CfFPV4_SP_D16 -XParm-embedded-"


make -j clean buildbase CROSSINSTALL=1 OS_TARGET=freertos CPU_TARGET=arm 
SUBARCH=armv6m CROSSOPT="-CfSOFT -XParm-embedded-"

make -j clean buildbase CROSSINSTALL=1 OS_TARGET=freertos CPU_TARGET=arm 
SUBARCH=armv7m CROSSOPT="-CfSOFT -XParm-embedded-"

Fun Fact: I have to include -CfSOFT in CROSSOPT for armv6m/7m or I will 
get this error:

/Library/Developer/CommandLineTools/usr/bin/make -C rtl all
/Library/Developer/CommandLineTools/usr/bin/make -C freertos all
/bin/mkdir -p /Users/ring/devel/fpc-freertos/rtl/units/arm-freertos
/Users/ring/devel/fpc-freertos/compiler/ppcrossarm -Cparmv6m -Ur 
-Tfreertos -Parm -XParm-freertos- -Xr -Ur -Xs -O2 -n -Fi../inc -Fi../arm 
-FE. -FU/Users/ring/devel/fpc-freertos/rtl/units/arm-freertos -darm 
-dRELEASE -XParm-embedded-  -Us -Sg system.pp @system.cfg
system.inc(416,5) Fatal: Internal error 200312126

Do you have an idea why? I compared to the embedded target but could not 
find something obvious....

The freertos bindings are not included yet as I am still testing & 
learning and I need your guidance on how to provide the lib/*.o files 
for freertos:

I currently build freertos rtl as three different versions with a 
hopefully sane base-set of configuration options, the question is where 
to put the matching *.o or *.a files, check them in in fpc or provide 
build instructions on the Wiki similar to the buildinstructions for 
xtensa target??

I have uploaded a zipfile with everything needed to build a freertos 


The Build also includes prebuilt .o files.

To build yourself you will first have to manually adjust the 
buildFreeRTOS.sh script so that it points to a correct arm-none-eabi-gcc.


Am 19.04.20 um 15:30 schrieb Florian Klämpfl:
> Am 06.04.20 um 20:54 schrieb Michael Ring via fpc-devel:
>> I was able to compile my first hello world for esp32, however I had 
>> to patch a few files so that compiling works for 4.0 / 4.1 Branch of 
>> esp-idf
>> Florian, can you please have a look at the patches and apply them if 
>> they are OK?
> I have committed the patch with some extensions/adaptions. With 
> current trunk, I can build a hello world following the wiki 
> instructions with ESP-IDF 4.0.
> Regarding the FreeRTOS binding for ARM: can you provide a patch somewhere?
> _______________________________________________
> fpc-devel maillist  -  fpc-devel at lists.freepascal.org
> https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel

More information about the fpc-devel mailing list