LINUX.ORG.RU

Как в libc6 системе скомпилировать программу с libc5 (слинковать)?


0

0

Естественно gcc,ld в системе собраны с libc6.

ld-linux.so.1 есть в /lib libc.so.5 есть в /usr/i386-slackware-linux-gnulibc1/lib последний путь прописан в /etc/ld.so.conf

Вопрос: как собрать бинарник из mmm.c для libc5 системы (diskless дистрибутив).

★★★★★

Вообще, нетривиально и зависит от дистрибутива. Moreover, обычно по
умолчанию в libc6 дистрибутивах отсутствуют стартовые файлы для libc5
(crt*.o; как я понял, они зависят от libc) и include'ы.
Рекомендую посмотреть:
http://ecg.mit.edu/george/gcc5.html

Die-Hard ★★★★★
()

Спасибо. А если у меня Slackware 8.0 и есть еще 4.0 (libc5) их как-нить можно совместить?

saper ★★★★★
() автор топика
Ответ на: комментарий от saper


> Slackware 8.0 и есть еще 4.0 (libc5) их как-нить можно совместить?
Что значит "совместить"? Двойная загрузка пойдет?

Кстати, как правило, поддержка libc5 есть во всех libc6 дистрибутивах
"почти" по умолчанию, в смысле, поддержка libc5 обычно ставится в
"самом главном" установочном меню. Правда, только поддержка ВЫПОЛНЕНИЯ libc5
слинкованных программ, а не компиляции под libc5.

Если под руками есть одновременно обе системы, то все очень просто:
На libc5 системе говорим:
gcc -c myfile.c
gcc -v myfile.o
В результате последней строчки gcc выдаст полный набор опций линковки.
Т.о. достаточно будет перенести необходимые файлы с libc5 системы на libc6
и написАть некий скрипт типа gcc5

Кстати, а не проще ли статически линковаться?

Die-Hard ★★★★★
()

Статически - проще, но: в libc5 системе программа говорит, что stderr,stdout,stdin не определены ...

Совместить - взять из slackware 4.0 пакеты libc5 и установить их в slackware 8.0 как gcc5, ld5, ldd5... в libc... ставить в /usr/i386-slackware-linux-gnulibc1 и прописать в /etc/ld.so.conf.

И еще: libc5 система не стоит и ставить ее могу.

saper ★★★★★
() автор топика
Ответ на: комментарий от saper

> в libc5 системе программа говорит, что stderr,stdout,stdin не определены ...

Глюк! Не могет такого быть... Не до конца статические, стало быть.



Die-Hard ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.