Как с glibc собрать?

Вопросы программирования на Free Pascal, использования компилятора и утилит.

Модератор: Модераторы

Ответить
Аватара пользователя
pda
постоялец
Сообщения: 303
Зарегистрирован: 27.05.2005 19:59:53

Как с glibc собрать?

Сообщение pda »

Вот здесь, описан {$FPC_USE_LIBC}, как способ собрать программу с привязкой к glibc. Возникает вопрос и как этим пользоваться? Просто вставить в исходник не получается, пишет неверный символ. Если описать с DEFINE, то ldd показывает что никаких зависимостей у исполняемого файла нет...
Аватара пользователя
Sergei I. Gorelkin
энтузиаст
Сообщения: 1409
Зарегистрирован: 24.07.2005 14:40:41
Откуда: Зеленоград

Сообщение Sergei I. Gorelkin »

{$FPC_USE_LIBC} - это опечатка, имеется в виду {$IFDEF FPC_USE_LIBC}. Этих директив полно в исходниках RTL, ими определяется - то ли вызывать syscall (быстро, но не все вызовы есть на всех системах), то ли функцию из libc (медленнее, но зато есть везде). Сама RTL при этом никуда не девается, libc ее не замещает. От определения символа FPC_USE_LIBC в собственной программе ничего не меняется, потому что RTL не пересобирается...
Аватара пользователя
pda
постоялец
Сообщения: 303
Зарегистрирован: 27.05.2005 19:59:53

Сообщение pda »

Ага, т.е. получается что бы собрать с зависимостью на glibc надо весь rtl пересобирать, а для тестирования держать у себя два fpc сразу?

И ещё, там в статье упоминаются модули Linux24, Linux26, epoll определён. Это только для примера или я плохо искал их в svn? :roll:
Аватара пользователя
Sergei I. Gorelkin
энтузиаст
Сообщения: 1409
Зарегистрирован: 24.07.2005 14:40:41
Откуда: Зеленоград

Сообщение Sergei I. Gorelkin »

Atrus писал(а):Ага, т.е. получается что бы собрать с зависимостью на glibc надо весь rtl пересобирать, а для тестирования держать у себя два fpc сразу?

Ну два fpc - это, наверное, излишне, а вот два набора модулей rtl - придется.

И ещё, там в статье упоминаются модули Linux24, Linux26, epoll определён. Это только для примера или я плохо искал их в svn? :roll:


Как я понял, Linux24 и Linux26 - это из разряда "вот неплохо бы..."
Ответить