Всем привет!!!
ОС Slack 11
Долго бился со сборкой PostgresQL из исходников. Make вываливался со слоывми /usr/lib/libc.so.6 invalid ELF header.
Сначало начал все тупо обновлять glibc gcc итд и ничего не помогало. Потом случайно обратил внимание, что этот libc.so.6 ссылка на рядом лежащий libc.so в котором написано несколько строк и все. Далее я пересослал libc.so.6 на /lib/libc-2.7.so и все заработало и скомпилилось.
ВОПРОС: 1) Каккова цель (предназначение) директории /usr/lib/ ??????
2) Я так понимаю, что в определенный момент символические ссылки должны сами сопоставляться /lib
и /usr/lib/ или наоборот не должны?
Какова философия существования /lib и /usr/lib и как они должны перекликаться? Хочу чтобы впредь такого не повторялось и был порядок. glibc обновлял через upgradepkg.
С уважением, Владимир.
Порядок в /USR/LIB/ (объясните pls)
Модератор: Модераторы разделов
-
Dimens
- Сообщения: 121
- ОС: Fedora
Re: Порядок в /USR/LIB/
Поменяйте дистрибутив, если Вы так хотите. Слака не для Вас.
Home: Fedora 11
Work: CentOS 5.4
Work: CentOS 5.4
-
cdrw
- Сообщения: 249
Re: Порядок в /USR/LIB/
В /lib размещаются библиотеки и модули ядра, ответственные за работу системы.
В /usr/lib размещаются библиотеки ответственные за работу отдельных пакетов системы.
По крайней мере так обстоит дело в Slackware, замечу еще, что это мое субъективное мнение.
Могут быть и исключения.
Как раз для него, и правильно делает, что спрашивает.
Вместе легче докопаться до истины.
-
Goodwin
- Сообщения: 149
- ОС: Slackware 13.0
Re: Порядок в /USR/LIB/
/lib - каталог содержит разделяемые библиотеки функций, необходимых компилятору языка C и модули (драйверы устройств). Даже если в системе не установлен компилятор языка C, разделяемые библиотеки необходимы, поскольку они используются многими прикладными программами. Они загружаются в память по мере необходимости выполнения каких-то функций, что позволяет уменьшить объем кода программ — в противном случае один и тот же код многократно повторялся бы в различных программах
/usr/lib - в каталоге содержится объектные библиотеки подпрограмм, динамические библиотеки, некоторые готовые к исполнению программы, которые не вызываются непосредственно. Сложные программные системы могут иметь свои подкаталоги в этом каталоге.
/usr/lib - в каталоге содержится объектные библиотеки подпрограмм, динамические библиотеки, некоторые готовые к исполнению программы, которые не вызываются непосредственно. Сложные программные системы могут иметь свои подкаталоги в этом каталоге.
Химические реакции, протекающие в большинстве голов, никак нельзя назвать мышлением.
-
cdrw
- Сообщения: 249
Re: Порядок в /USR/LIB/
Goodwin писал(а): ↑04.01.2008 15:15/lib - каталог содержит разделяемые библиотеки функций, необходимых компилятору языка C и модули (драйверы устройств). Даже если в системе не установлен компилятор языка C, разделяемые библиотеки необходимы, поскольку они используются многими прикладными программами. Они загружаются в память по мере необходимости выполнения каких-то функций, что позволяет уменьшить объем кода программ — в противном случае один и тот же код многократно повторялся бы в различных программах
/usr/lib - в каталоге содержится объектные библиотеки подпрограмм, динамические библиотеки, некоторые готовые к исполнению программы, которые не вызываются непосредственно. Сложные программные системы могут иметь свои подкаталоги в этом каталоге.
Вот таких отвечающих и надо бояться. Сомневаюсь, что он понял, что сам сказал.
-
Juliette
- Сообщения: 5058
- Статус: ROSA Lab
- ОС: Ubuntu LTS, Mandriva 2011
-
Goodwin
- Сообщения: 149
- ОС: Slackware 13.0
Re: Порядок в /USR/LIB/
cdrw писал(а): ↑04.01.2008 15:59Goodwin писал(а): ↑04.01.2008 15:15/lib - каталог содержит разделяемые библиотеки функций, необходимых компилятору языка C и модули (драйверы устройств). Даже если в системе не установлен компилятор языка C, разделяемые библиотеки необходимы, поскольку они используются многими прикладными программами. Они загружаются в память по мере необходимости выполнения каких-то функций, что позволяет уменьшить объем кода программ — в противном случае один и тот же код многократно повторялся бы в различных программах
/usr/lib - в каталоге содержится объектные библиотеки подпрограмм, динамические библиотеки, некоторые готовые к исполнению программы, которые не вызываются непосредственно. Сложные программные системы могут иметь свои подкаталоги в этом каталоге.
Вот таких отвечающих и надо бояться. Сомневаюсь, что он понял, что сам сказал.
Есть такое понятие: Filesystem Hierarchy Standart (FHS). Слыхали?
Почитать можно здесь: FHS
Думаю для вас многое станет понятней.
Химические реакции, протекающие в большинстве голов, никак нельзя назвать мышлением.
-
Dimens
- Сообщения: 121
- ОС: Fedora
Re: Порядок в /USR/LIB/
2cdrw
Вообще могу сказать, что во втором посте, я сказал может и грубо, но это из-за того что:
- Многие ленятся поискать по форуму что-то подобное, а сразу создают тему;
- Прежде чем браться за Слаку, можно было бы почитать SlackBook, там много чего написано об устройстве системы.
Вообще могу сказать, что во втором посте, я сказал может и грубо, но это из-за того что:
- Многие ленятся поискать по форуму что-то подобное, а сразу создают тему;
- Прежде чем браться за Слаку, можно было бы почитать SlackBook, там много чего написано об устройстве системы.
Home: Fedora 11
Work: CentOS 5.4
Work: CentOS 5.4
-
prog
- Сообщения: 73
Re: Порядок в /USR/LIB/
Спасибо всем кто откликнулся стало яснее. Но в общем-то мой основной вопрос в том, почему исходники стали компилится после того как была переделана символическая ссылка файла /usr/lib/libc.so.6:
была на /usr/lib/libc.so (в котором всего несколько строк)
стала на /lib/libc-2.7.so (полноценная библиотека)
ОСНОВНОЙ ВОПРОС ПРАВИЛЬНО ЛИ Я СДЕЛАЛ?
ЕСЛИ ДА ТО: 1) ПОЧЕМУ ПРИ ОБНОВЛЕНИИ GLIBC ЭТА ССЫЛКА НЕ ПЕРЕДЕЛАЛАСЬ?
2) МОЖЕТ ТОГДА ЕЩЕ ДРУГИЕ ССЫЛКИ НЕ ПЕРЕДЕЛАНЫ?
ЕСЛИ НЕТ ТО: 1) НА ЧТО ССЫЛАЕТСЯ ВАШ /USR/LIB/LIBC.SO.6?
2) КАК БЫТЬ СО СБОРКОЙ ИЗ ИСХОДНИКОВ?
ДОЛЖНЫ ЛИ ПЕРЕКЛИКАТЬСЯ БИБЛИОТЕКИ В ЭТИХ ДИРЕКТОРИЯХ?
КТО ОТВЕТСТВЕННЕН ЗА ЭТИ СИМЛИНКИ?
С уважением, Владимир.
была на /usr/lib/libc.so (в котором всего несколько строк)
стала на /lib/libc-2.7.so (полноценная библиотека)
ОСНОВНОЙ ВОПРОС ПРАВИЛЬНО ЛИ Я СДЕЛАЛ?
ЕСЛИ ДА ТО: 1) ПОЧЕМУ ПРИ ОБНОВЛЕНИИ GLIBC ЭТА ССЫЛКА НЕ ПЕРЕДЕЛАЛАСЬ?
2) МОЖЕТ ТОГДА ЕЩЕ ДРУГИЕ ССЫЛКИ НЕ ПЕРЕДЕЛАНЫ?
ЕСЛИ НЕТ ТО: 1) НА ЧТО ССЫЛАЕТСЯ ВАШ /USR/LIB/LIBC.SO.6?
2) КАК БЫТЬ СО СБОРКОЙ ИЗ ИСХОДНИКОВ?
ДОЛЖНЫ ЛИ ПЕРЕКЛИКАТЬСЯ БИБЛИОТЕКИ В ЭТИХ ДИРЕКТОРИЯХ?
КТО ОТВЕТСТВЕННЕН ЗА ЭТИ СИМЛИНКИ?
С уважением, Владимир.
-
z400
- Сообщения: 10
- ОС: GNU/Linux Slackware 11
Re: Порядок в /USR/LIB/
prog писал(а): ↑05.01.2008 01:32Спасибо всем кто откликнулся стало яснее. Но в общем-то мой основной вопрос в том, почему исходники стали компилится после того как была переделана символическая ссылка файла /usr/lib/libc.so.6:
была на /usr/lib/libc.so (в котором всего несколько строк)
стала на /lib/libc-2.7.so (полноценная библиотека)
ОСНОВНОЙ ВОПРОС ПРАВИЛЬНО ЛИ Я СДЕЛАЛ?
ЕСЛИ ДА ТО: 1) ПОЧЕМУ ПРИ ОБНОВЛЕНИИ GLIBC ЭТА ССЫЛКА НЕ ПЕРЕДЕЛАЛАСЬ?
2) МОЖЕТ ТОГДА ЕЩЕ ДРУГИЕ ССЫЛКИ НЕ ПЕРЕДЕЛАНЫ?
ЕСЛИ НЕТ ТО: 1) НА ЧТО ССЫЛАЕТСЯ ВАШ /USR/LIB/LIBC.SO.6?
2) КАК БЫТЬ СО СБОРКОЙ ИЗ ИСХОДНИКОВ?
ДОЛЖНЫ ЛИ ПЕРЕКЛИКАТЬСЯ БИБЛИОТЕКИ В ЭТИХ ДИРЕКТОРИЯХ?
КТО ОТВЕТСТВЕННЕН ЗА ЭТИ СИМЛИНКИ?
Нет, всё-таки наверное слакварь не для вас. Аргумент: вы шифт зажимаете, либо пользуетесь капслоком.
По существу вопроса.
1) когда вы собираете пакет из исходников - будьте готовы поработать руками и напильником. Если напильника нет, то лучше использовать уже собранные пакеты.
2) Слакварь не отслеживает зависимости пакетов. И это не баг, а принципиальный момент идеологии дистрибутива (об этом сказано в Основах Слаквари). И в нём есть свои плюсы. Легче контролировать систему.
3) отвечая на ваш вопрос: если у вас всё правильно работает, значит вы всё сделали правильно.
4) ссылка не переделалась потому, что, очевидно, в сценарии мэйкфайла не было предусмотрено переделывание ссылки. Так, видимо, было посчитано, что коли человек собирает сам, то он в курсе, какие запчасти прописывать, если что. Так-же, видимо, разработчики пакета посчитали, что в вашей системе по умолчанию будет более новая версия некоторой библиотеки (в д.с. libc), нежели у вас оказалось фактически. Возможно если бы дело было где-нибудь в убунту, - всё было бы совсем по другому.
5) насчёт libc.so.6 - ничего сказать не могу, т.к. у меня данной либы вообще нету, и мне без неё неплохо. Откуда вы её вообще взяли?
6) в каком смысле "перекликаться"?
7) ответ на самый главный вопрос: ответственным в слаквари - в конечном итоге является тот, кто обладает правами суперпользователя, т.е. "root".
zveroboy.
-
prog
- Сообщения: 73
Re: Порядок в /USR/LIB/
Спасибо за 4 и 7 ответы. Я догадывался, что скорее всего это так и есть.
Slackware для меня!!! Выбрал я его осознанно. Т.к. считаю, что ковыряние напрямую конфигов и отсутствие отслеживания зависимостей пкетов заставляет глубже понимать систему. Мне чужды расказы о том как иные (попсовые) дистрибы сами определяют (находят) учтройства, проставляют нужные драйвера и имеют графический инсталл.
Slackware для меня!!! Выбрал я его осознанно. Т.к. считаю, что ковыряние напрямую конфигов и отсутствие отслеживания зависимостей пкетов заставляет глубже понимать систему. Мне чужды расказы о том как иные (попсовые) дистрибы сами определяют (находят) учтройства, проставляют нужные драйвера и имеют графический инсталл.
-
Burnout
- Сообщения: 88
- ОС: Gentoo Linux
Re: Порядок в /USR/LIB/
prog писал(а): ↑05.01.2008 13:35Т.к. считаю, что ковыряние напрямую конфигов и отсутствие отслеживания зависимостей пкетов заставляет глубже понимать систему. Мне чужды расказы о том как иные (попсовые) дистрибы сами определяют (находят) учтройства, проставляют нужные драйвера и имеют графический инсталл.
Попробуйте Linux From Scratch.
-
prog
- Сообщения: 73
Re: Порядок в /USR/LIB/
Быстренько прочитал книженцию по LFS 4.0 очень понравилось. Спасибо за наводку
-
cdrw
- Сообщения: 249
Re: Порядок в /USR/LIB/
Какие опровержения? Какие более точные определения? Говорить таким языком, как был продублирован мой ответ - значит не говорить ничего.
Был приведен очень не удачный перевод, который вызывает еще больше вопросов. Я объяснил более простым языком и суть дела.
В частности, что поясняет эта фраза?
Сложные программные системы могут иметь свои подкаталоги в этом каталоге.
-
cdrw
- Сообщения: 249
Re: Порядок в /USR/LIB/
Нисколько! Приходится доходить до всего методом "научного тыка". В английском я откровенный слабак, а хороших переводов очень мало. Думаю, что пользователи просят помощи не от того, что не могут найти информацию. Просто она трудна для понимания. Извините за резкость, наболело.