|
|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Sergey Abramov 2:5090/188.26 26 Oct 2003 02:00:36 To : Victor Wagner Subject : Зависимости у RPM -------------------------------------------------------------------------------- 25 Окт 03 10:59, Victor Wagner -> Sergey Abramov: SA>> А что значат зависимости (у RPM) в которых после имени библиотеки SA>> еще чтото прописано в скобках? Hу вот допустим если прописано SA>> просто libc.so.6 (я беру просто для примера) то ясно что программа SA>> требует данную библиотеку, а вот если прописано SA>> libc.so.6(GCC_3.0)? Что есть этот (GCC_3.0)? VW> Вероятно, номер версии компилятора, которым собрана эта библиотека. VW> Для библиотек на C это не актуально, а для C++ крайне актуально. VW> Поскольку с каждой minor версией компилятора в очередной раз меняют VW> name mangling, и новый компилятор просто не найдет в библиотеке, VW> собранной старым, тех функций, которые там должны быть. Hу вообщето там вполне может быть и не только GCC (я это для примера привел), вот у меня например стоит glibc 2.2.5, делаю: rpm -q --provides glibc-2.2.5-16.4mdk|fgrep libc.so.6 выдает: libc.so.6 libc.so.6(GCC_3.0) libc.so.6(GLIBC_2.0) libc.so.6(GLIBC_2.1) libc.so.6(GLIBC_2.1.1) libc.so.6(GLIBC_2.1.2) libc.so.6(GLIBC_2.1.3) libc.so.6(GLIBC_2.2) libc.so.6(GLIBC_2.2.1) libc.so.6(GLIBC_2.2.2) libc.so.6(GLIBC_2.2.3) libc.so.6(GLIBC_2.2.4) libc.so.6(GLIBC_2.2.5) Причем если просмотреть сам файл libc.so.6 то все эти GCC_3.0/GLIBC_2.0/... там недалеко от начала файла перечислены друг за другом (разделителем служит символ с кодом 0), ни в формате ELF ни вообще в устройстве библиотек я ничего непонимаю, поэтому понять что это немогу. Спрашиваю я потому как бывают бинарные пакеты которые требуют нечто в этом роде чего у меня в системе нет... Hу вот например недавно ставил Opera 7.21, требует libstdc++.so.5(CXXABI_1.2) и libstdc++.so.5(GLIBCPP_3.2) [~]$ rpm -q --whatprovides libstdc++.so.5 libstdc++5-3.2.2-5mdk Hо никаких GLIBCPP_3.2 и CXXABI_1.2 ни в Provides у пакета libstdc++5-3.2.2-5mdk ни в самом файле /usr/lib/libstdc++.so.5 нет... Поставить Оперу я конечно с --nodeps могу (и она нормально работает), сделать свой пакет с нужными Provides (чтобы rpm -Va не ругался и apt нормально работал) тоже, но всеравно хочется разобраться с чем я вообще имею дело. Буе. *<------------------------------------------------------------------------->* _[Как можно жить без компа?]-[H_Love]-[team ЛИHДА]-[Win9x MUST DIE!]_ ... BestView in 80x25 TextMode. _/<----------------------------------------->/_ --- Playing: Nothing :( * Origin: Плохие девчонки они хорошие! (2:5090/188.26) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/40113f9aba59.html, оценка из 5, голосов 10
|