Punkt 1: mach mal die ganzen Platform weg und schreib dir dafür nen Kommentar irgendwo hin, dass diese
Unit NUR unter Windows funktioniert. Dann nimmst du die ganzen {$IFDEF LINUX}-Blöcke und schmeißt diese auch raus. Du arbeitest ja mit Windows.
So, nach dieser Entschlankungskur sollte es einfacher sein, den Fehler zu finden.