kernel panic in userspace

my own self destruction
  • Blog
  • about
  • articles
    • Virtualbox bridge
    • linux blogging
    • Gentoo on Acer Extensa 5630Z
  • code
    • @unfollowr
    • WordPress
      • WordPress-bbPress syncronization
      • IE Warning
      • PostAds
    • Callisto overlay
    • @listwatcher
  • CV
  • belarusian
  • russian
  • english

preserved libs

Aug 20 2008
Broken Iris – Beautiful Girl
  • belarusian
  • russian

Тыя карыстальнікі Gentoo, каторыя не баяцца карыстацца нестабільнай веткай пакетаў (накшталт ~x86), пасьля не такіх ужо даўніх аднаўленьняў на portage-2.2 маглі час ад часу пачаць заўважаць наступныя паведамленьні:

!!! existing preserved libs:
>>> package: media-libs/libdvdread-9999
* – /usr/lib/libdvdread.so.3
* – /usr/lib/libdvdread.so.3.2.1
Use emerge @preserved-rebuild to rebuild packages using these libraries

Страшэннага ў іх нічога няма, зараз я распавяду, штэ гэта азначае. Я ж таксама люблю bleeding edge, чаго ўжо там хаваць.
Дык вось, preserved libs – файлы, якія павінны былі быць выдаленыя сістэмай portage зь сістэмы, як файлы, якія належаць старой вэрсіі пакету. Напрыклад: у мяне стаіць (дакладней стаяў) libdvdread-9999. Заставім незамаскіраванасьць вэрсіі пакету на сумленьні гаспадароў овэрлэю berkano. Пры аднаўленьні са звычайнай вэрсіі ў libdvdread зьмянілася api, што аўтаматычна застаўляе распрацоўшчыкаў зьмяніць адну з апошніх лічбаў у назове файла бібліятэкі. У звычайнай вэрсіі быў libdvdread.so.3, а ў svn вэрсіі стаў libdvdread.so.4. Праграма, якія выкарыстоўвалі старую вэрсію api па ідэі павінны згубіць сваю апору, таму што libdvdread.so.3 павінен быць выдалены зь сістэмы як састарэўшы. Але ня так усё галіма, як падаецца, таму што новая фіча portage менавіта тым і займаецца, што вышуквае падобнага рожу праблемы і застаўляе старыя вэрсіі бібліятэк нараўне з новымі.
Portage таксама складае набор праграмаў, якія залежаць ад старой бібліятэкі і параіць іх перасабраць. Вельмі верагодна, што лінкоўка атрымаецца і з новай вэрсіяй. Для гэтага існуе каманда
emerge @preserved-rebuild
Згадзіцеся, даволі карысная фіча ;) Пасьля выкананьня ўсех залежнасьцяў старая вэрсія бібліятэкі будзе выдалена зь сістэмы. Праблема накшталт паломкі сістэмы праз аднаўленьне expat (больш-менш сталыя карыстальнікі павінны памятаць) вырашана, шыкоўна!
У мяне ня выйшла перасабраць k3b, таму я проста замаскіраваў libdvdread:

echo '=media-libs/libdvdread-9999' >> /etc/portage/package.mask
  • belarusian
  • russian

Те пользователи Gentoo, которые не брезгуют пользоваться нестабильной веткой пакетов (вроде ~x86), после не таких уж давних обновлений на portage-2.2 могли начать иногда замечать следующие сообщения:

!!! existing preserved libs:
>>> package: media-libs/libdvdread-9999
* – /usr/lib/libdvdread.so.3
* – /usr/lib/libdvdread.so.3.2.1
Use emerge @preserved-rebuild to rebuild packages using these libraries

Страшного в них ничего нету, сейчас я расскажу, что это значит. Я ведь тоже люблю bleeding edge, чего греха таить.
Так вот, preserved libs – файлы, которые должны были быть удалены системой portage из системы, как принадлежащие старой версии пакета. Например: у меня стот (точнее, стоял) libdvdread-9999. Оставим незамаскированность версии пакета на совести хозяев оверлея berkano. При обновлении с обычной версии у libdvdread сменилось api, что автоматически заставляет разработчиков изменить одну из последних цифр в названии файла библиотеки. В обычной версии был libdvdread.so.3, а в svn версии стал libdvdread.so.4. Программы, использовавшие старую версию api по идее должны были лишиться своей опоры, ибо libdvdread.so.3 должен быть удалён из системы как устаревший. Но не тут-то было, ведь новая фича portage именно тем и занята, что выискивает подобного рода проблемы и оставляет старые версии библиотек наравне с новыми.
Portage также создаст набор программ, зависящих от старой библиотеки и предложит пересобрать их. Очень может быть, что линковка получится и с новой версией. Для этого есть команда
emerge @preserved-rebuild
Согласитесь, не самая бесполезная фича ;) После соблюдения всех зависимостей старая версия библиотеки будет удалена из системы. Проблема типа поломки системы из-за обновление expat (более-менее старые пользователи должны помнить) решена, шикарно!
У меня не вышло пересобрать k3b, посему я просто замаскировал libdvdread:

echo '=media-libs/libdvdread-9999' >> /etc/portage/package.mask

« ncmpc, nmpcpp & ncmpc-tradiaz CFLAGS troubles »

Tags
berkano, emerge, expat, gentoo, k3b, libdvdread, masking, overlays, portage, preserved libs, upgrade
Categories
Belarusian, Runix, Russian
Meta
Subscribe [ru] Subscribe [be] Comments rss Trackback
Similar
Gentoo virtualbox | portage changes tracking | gentoo midori (webkit) testing | ass? | block ssh bastards

Leave a comment

You can use these tags : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>


RSS antisocial feeling

  • Ворачиваться в страну шпрот собираешься?
  • (via priskorbno) хочу. давно хотел. где купить?
  • ??
  • "((foldl (+) 0 [1..100]) ^ 2) - (foldl (+) 0 (map (^ 2) [1..100]))"
  • ?

Tags

bash belarus blog blogs bugs coding concerts download friends fun gentoo google images internet javascript kde language life links linux livejournal me money music overlays perl photos php plugins portage projects rss school shell social social networks ssh studying tests twitter ubuntu univer vkontakte wifi wordpress

links

  • asocial feeling
  • Callisto overlay
  • daThumbs
  • last.fm
  • twitter
  • Vkontakte
  • ~idioteque

Recent Comments

  • bobrik on @listwatcher
  • Process_of_illumination on WordPress-bbPress syncronization
  • Process_of_illumination on WordPress-bbPress syncronization
  • Aviva Gabriel on @listwatcher
  • Aviva Gabriel on @listwatcher
  • Larry D. Halstead on @listwatcher
  • neagaoleg on Hide Mentions in Twitter Web Interface
  • neagaoleg on about
  • Martina Bella on @unfollowr
  • gamersroute.com on WordPress-bbPress syncronization

Archives

  • January 2010 (1)
  • November 2009 (2)
  • October 2009 (5)
  • September 2009 (2)
  • August 2009 (2)
  • July 2009 (3)
  • June 2009 (1)
  • April 2009 (2)
  • March 2009 (1)
  • February 2009 (1)
  • January 2009 (2)
  • December 2008 (12)
  • November 2008 (17)
  • October 2008 (20)
  • September 2008 (13)
  • August 2008 (25)
  • July 2008 (18)
  • June 2008 (15)
  • May 2008 (7)
  • March 2008 (1)
  • February 2008 (9)
  • January 2008 (11)
  • December 2007 (24)
  • November 2007 (27)
  • October 2007 (21)

Meta

  • Log in
  • Entries RSS
  • Comments RSS
  • WordPress.org

Creative Commons License rss comments rss valid xhtml