libc (точнее, glibc - с другими инкарнациями libc, вроде uclibc, все более благополучно, тьфу-тьфу) к настоящему времени превратился в такого монстра... У меня складывается впечатление, что о всех тонкостях его устройства и внутренних взаимосвязях знают от силы человек пять в мире.
Насколько можно понять из чтения комментариев к багрепортам:
1) FPC что-то проверяет в ELF interpreter (как оно правильно переводится?), который /lib/ld-linux.so.2. При кросскомпиляции, скорее всего, он этого не делает.
2) Линкер (ld) может быть заточен под конкретную систему и подключать какие-то одному ему известные модули. То есть, работать совсем не так, как линкер из binutils, используемый при кросскомпиляции.
3) Наличие нескольких незакрытых багрепортов говорит о том, что оно глючит даже при компиляции в "родном" окружении. Например, у меня на slackware файл /lib/libc.so является скриптом, и до тех пор, пока его не сделаешь симлинком на /lib/libc.so.6, ни одна программа на Free Pascal с libc не собирается в принципе. А после того, как сделаешь симлинком, невозможно ничего собрать уже с помощью gcc.
Чего уж тут о кросскомпиляции говорить...
Добавлено спустя 3 минуты 28 секунд:
...точнее, надо сказать, что, пока речь не заходит о libc, кросскомпиляция работает. Т.е. сам FPC и простые программы на нем собираются без проблем.