LINUX.ORG.RU

Выяснить индивидуальные зависимости пакета/приложения.

 


0

1

После нескольких неудачных попыток мигрировать на сurrent, решил обновляться ondemand.

Обновил gcc и что-то еще. Кажется ради python3 это делалал. Все прекрасно, но перестал работать xfce4-clipman-plugin

Пробовал через ldd но там такой огромный список обращений, к отдельным библиотекам, а какая из них какому приложению относится – страшно разбираться

Помнится, где-то есть в системе файлы, где явно перечислены зависимости установленных пакетов. Напомните?

upgrade-all уже просто боюсь.

2. Анализ файла .txt из дистрибутива
Каждый пакет Slackware сопровождается текстовым файлом с описанием, где могут быть указаны зависимости.

Где искать:

На установочном носителе/зеркале: в каталоге slackware/x/, где x — категория пакета (a, ap, d, n и т. д.).

В локальной системе: /var/log/packages/ (если пакет уже установлен).

Как проверить:

Найдите файл имя_пакета.txt в соответствующей категории.

Откройте его и поищите строки типа:

REQUIRES: ...
DEPENDS ON: ...
cobold ★★★★★
()

Вообще, man sqg. Но:

но перестал работать xfce4-clipman-plugin

Проще пересобрать его.

wget -c -r -np -nH --cut-dirs=4 https://slackware.osuosl.org/slackware64-current/source/xfce/xfce4-clipman-plugin/ -R index.html*
bash *Build
upgradepkg --reinstall /tmp/xfce4-clipman*t?z*

какому приложению относится – страшно разбираться

ldd /path/to/myprogram-or-myshared-object{,.so} | grep "not found", затем slackpkg file-search result ;)

Помнится, где-то есть в системе файлы, где явно перечислены зависимости установленных пакетов

Нет таких. REQUIRES как бы и есть, только это относится к пакетам с SBo, пакеты от Патрика такого не содержат вообще.

upgrade-all уже просто боюсь

slackpkg install-new
slackpkg upgrade-all
slackpkg clean-system

Как сломаешь, так и починишь. {install,upgrade,remove}pkg и chroot никто не отменял.

yars068 ★★★★★
()
Последнее исправление: yars068 (всего исправлений: 9)

Есть предположение, что с ненулевой вероятностью может оказаться достаточным остаться на 15.0 с штатным «довеском»:
/testing/packages/binutils-gcc-glibc/
/testing/packages/graphics-updates/

Кажется ради python3 это делалал.

А может и с нулевой;-)

Пробовал через ldd

Есть смысл глянуть в сторону sbbdep:
http://www.slackware.com/~alien/slackbuilds/sbbdep/

bormant ★★★★★
()
Последнее исправление: bormant (всего исправлений: 1)

А вообще обновляться не так сложно. Прозондировать файл ChangeLog.txt на предмет новых пакетов (по слову added). Добавить их (особенно из директорий a/, l/, n/, x/), затем следовать иструкциям файла UPGRADE.TXT.

Возможно еще нужно добавить новых пользователей (на десктопе может и не потребоваться), жаль файл CHANGES_AND_HINTS.TXT не обновлялся давно.

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

slackpkg clean-system

   This action removes  all  of  the  packages  that
            don't  belong  to  a standard Slackware installa‐
            tion. 

оно мне пользовательские программы не снесет? Некоторые древние вещи я с очень большим трудом ставил.

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

В диалоговом режиме – снесёт только то, что отметишь галочками. Эта команда удаляет все пакеты, которые не являются частью Slackware, в том числе и те, которые были удалены из состава дистрибутива. В любом случае, необходимо перед этим посмотреть в ChangeLog.txt, что было удалено (пакет: Removed.), сравнить с тем, что установлено в системе, и только потом выполнять команду. Но можно и сразу выцепить из журнала изменений удалённые пакеты и скормить список removepkg.

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

В диалоговом режиме

а можно как-то на нем настоять? Это не та команда с которой я бы хотел эксперементировать.

Csandriel_x64
() автор топика
Последнее исправление: Csandriel_x64 (всего исправлений: 1)
Ответ на: комментарий от yars068

Я конечно попробую обновиться полностью. Если ничего не получится. Но в любом случае хотелось бы изучить проблему и возможно что-то новое.

Имею я вот что

$ /usr/bin/xfce4-clipman
/usr/bin/xfce4-clipman: symbol lookup error: /usr/bin/xfce4-clipman: undefined symbol: xfce_clipboard_manager_new
[user@host] [18:06:45]
[~] 
$ ldd /usr/bin/xfce4-clipman
	linux-vdso.so.1 (0x00007ffca37b4000)
	libwayland-client.so.0 => /usr/lib64/libwayland-client.so.0 (0x00007fee2cff0000)
	libX11.so.6 => /usr/lib64/libX11.so.6 (0x00007fee2cea8000)
	libXtst.so.6 => /usr/lib64/libXtst.so.6 (0x00007fee2cea0000)
	libxfce4ui-2.so.0 => /usr/lib64/libxfce4ui-2.so.0 (0x00007fee2ce80000)
	libgtk-3.so.0 => /usr/lib64/libgtk-3.so.0 (0x00007fee2c6d0000)
	libgdk-3.so.0 => /usr/lib64/libgdk-3.so.0 (0x00007fee2c5c8000)
	libz.so.1 => /lib64/libz.so.1 (0x00007fee2c5a8000)
	libpangocairo-1.0.so.0 => /usr/lib64/libpangocairo-1.0.so.0 (0x00007fee2c590000)
	libpango-1.0.so.0 => /usr/lib64/libpango-1.0.so.0 (0x00007fee2c538000)
	libharfbuzz.so.0 => /usr/lib64/libharfbuzz.so.0 (0x00007fee2c440000)
	libatk-1.0.so.0 => /usr/lib64/libatk-1.0.so.0 (0x00007fee2c410000)
	libcairo-gobject.so.2 => /usr/lib64/libcairo-gobject.so.2 (0x00007fee2c400000)
	libcairo.so.2 => /usr/lib64/libcairo.so.2 (0x00007fee2c2c8000)
	libgdk_pixbuf-2.0.so.0 => /usr/lib64/libgdk_pixbuf-2.0.so.0 (0x00007fee2c298000)
	libxfce4util.so.7 => /usr/lib64/libxfce4util.so.7 (0x00007fee2c280000)
	libxfconf-0.so.3 => /usr/lib64/libxfconf-0.so.3 (0x00007fee2c260000)
	libgio-2.0.so.0 => /usr/lib64/libgio-2.0.so.0 (0x00007fee2c088000)
	libgobject-2.0.so.0 => /usr/lib64/libgobject-2.0.so.0 (0x00007fee2c028000)
	libglib-2.0.so.0 => /usr/lib64/libglib-2.0.so.0 (0x00007fee2bef0000)
	libqrencode.so.4 => /usr/lib64/libqrencode.so.4 (0x00007fee2bee0000)
	libc.so.6 => /lib64/libc.so.6 (0x00007fee2bcd0000)
	libffi.so.7 => /usr/lib64/libffi.so.7 (0x00007fee2bcc0000)
	libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fee2bcb8000)
	libxcb.so.1 => /usr/lib64/libxcb.so.1 (0x00007fee2bc88000)
	libdl.so.2 => /lib64/libdl.so.2 (0x00007fee2bc80000)
	libXext.so.6 => /usr/lib64/libXext.so.6 (0x00007fee2bc68000)
	libXi.so.6 => /usr/lib64/libXi.so.6 (0x00007fee2bc50000)
	libSM.so.6 => /usr/lib64/libSM.so.6 (0x00007fee2bc40000)
	libICE.so.6 => /usr/lib64/libICE.so.6 (0x00007fee2bc20000)
	libstartup-notification-1.so.0 => /usr/lib64/libstartup-notification-1.so.0 (0x00007fee2bc10000)
	libgmodule-2.0.so.0 => /usr/lib64/libgmodule-2.0.so.0 (0x00007fee2bc08000)
	libpangoft2-1.0.so.0 => /usr/lib64/libpangoft2-1.0.so.0 (0x00007fee2bbe8000)
	libfontconfig.so.1 => /usr/lib64/libfontconfig.so.1 (0x00007fee2bb98000)
	libfribidi.so.0 => /usr/lib64/libfribidi.so.0 (0x00007fee2bb78000)
	libepoxy.so.0 => /usr/lib64/libepoxy.so.0 (0x00007fee2ba40000)
	libm.so.6 => /lib64/libm.so.6 (0x00007fee2b940000)
	libatk-bridge-2.0.so.0 => /usr/lib64/libatk-bridge-2.0.so.0 (0x00007fee2b908000)
	libXfixes.so.3 => /usr/lib64/libXfixes.so.3 (0x00007fee2b8f8000)
	librt.so.1 => /lib64/librt.so.1 (0x00007fee2b8f0000)
	libxkbcommon.so.0 => /usr/lib64/libxkbcommon.so.0 (0x00007fee2b8a8000)
	libwayland-cursor.so.0 => /usr/lib64/libwayland-cursor.so.0 (0x00007fee2b898000)
	libwayland-egl.so.1 => /usr/lib64/libwayland-egl.so.1 (0x00007fee2b890000)
	libXcursor.so.1 => /usr/lib64/libXcursor.so.1 (0x00007fee2b880000)
	libXdamage.so.1 => /usr/lib64/libXdamage.so.1 (0x00007fee2b878000)
	libXcomposite.so.1 => /usr/lib64/libXcomposite.so.1 (0x00007fee2b870000)
	libXrandr.so.2 => /usr/lib64/libXrandr.so.2 (0x00007fee2b860000)
	libXinerama.so.1 => /usr/lib64/libXinerama.so.1 (0x00007fee2b858000)
	libfreetype.so.6 => /usr/lib64/libfreetype.so.6 (0x00007fee2b790000)
	libgraphite2.so.3 => /usr/lib64/libgraphite2.so.3 (0x00007fee2b760000)
	libpixman-1.so.0 => /usr/lib64/libpixman-1.so.0 (0x00007fee2b6b8000)
	libEGL.so.1 => /usr/lib64/libEGL.so.1 (0x00007fee2b6a0000)
	libpng16.so.16 => /usr/lib64/libpng16.so.16 (0x00007fee2b668000)
	libxcb-shm.so.0 => /usr/lib64/libxcb-shm.so.0 (0x00007fee2b660000)
	libxcb-render.so.0 => /usr/lib64/libxcb-render.so.0 (0x00007fee2b650000)
	libXrender.so.1 => /usr/lib64/libXrender.so.1 (0x00007fee2b640000)
	libGL.so.1 => /usr/lib64/libGL.so.1 (0x00007fee2b5b0000)
	libjpeg.so.62 => /usr/lib64/libjpeg.so.62 (0x00007fee2b508000)
	libgthread-2.0.so.0 => /usr/lib64/libgthread-2.0.so.0 (0x00007fee2b500000)
	libmount.so.1 => /lib64/libmount.so.1 (0x00007fee2b4a0000)
	libresolv.so.2 => /lib64/libresolv.so.2 (0x00007fee2b488000)
	libpcre.so.1 => /lib64/libpcre.so.1 (0x00007fee2b410000)
	/lib64/ld-linux-x86-64.so.2 (0x00007fee2d038000)
	libXau.so.6 => /usr/lib64/libXau.so.6 (0x00007fee2b408000)
	libXdmcp.so.6 => /usr/lib64/libXdmcp.so.6 (0x00007fee2b400000)
	libuuid.so.1 => /lib64/libuuid.so.1 (0x00007fee2b3f0000)
	libxcb-util.so.1 => /usr/lib64/libxcb-util.so.1 (0x00007fee2b3e8000)
	libX11-xcb.so.1 => /usr/lib64/libX11-xcb.so.1 (0x00007fee2b3e0000)
	libxml2.so.2 => /usr/lib64/libxml2.so.2 (0x00007fee2b270000)
	libdbus-1.so.3 => /usr/lib64/libdbus-1.so.3 (0x00007fee2b218000)
	libatspi.so.0 => /usr/lib64/libatspi.so.0 (0x00007fee2b1d8000)
	libbz2.so.1 => /lib64/libbz2.so.1 (0x00007fee2b1c0000)
	libbrotlidec.so.1 => /usr/lib64/libbrotlidec.so.1 (0x00007fee2b1b0000)
	libGLdispatch.so.0 => /usr/lib64/libGLdispatch.so.0 (0x00007fee2b0f0000)
	libGLX.so.0 => /usr/lib64/libGLX.so.0 (0x00007fee2b0b8000)
	libblkid.so.1 => /lib64/libblkid.so.1 (0x00007fee2b060000)
	liblzma.so.5 => /lib64/liblzma.so.5 (0x00007fee2b038000)
	libelogind.so.0 => /lib64/libelogind.so.0 (0x00007fee2af88000)
	libbrotlicommon.so.1 => /usr/lib64/libbrotlicommon.so.1 (0x00007fee2af60000)
	libcap.so.2 => /lib64/libcap.so.2 (0x00007fee2af50000)

Оно мне ничего не говорит.

Csandriel_x64
() автор топика