Вопросы про porteus

Добро пожаловать!

Moderator: Blaze

glestwid
Black ninja
Black ninja
Posts: 85
Joined: 09 Jan 2018, 20:05
Distribution: Porteus-KDE 3.2.2 i586

Вопросы про porteus

Post#286 by glestwid » 20 Nov 2019, 08:54

Blaze wrote:
20 Nov 2019, 08:51
Если выходит undefined symbol - грубо говоря говорит о том, что библиотеки несовместимы и их сборка производилась в разное время и с разными зависимостями.
Ок, и что тогда делать? Разве USM не выдает консистентный набор модулей, исходя из их зависимостей?

User avatar
Blaze
DEV Team
DEV Team
Posts: 2718
Joined: 28 Dec 2010, 11:31
Distribution: ⟰ Porteus current ☯ all DEs ☯
Location: ☭ Russian Federation, Lipetsk region, Dankov
Contact:

Вопросы про porteus

Post#287 by Blaze » 20 Nov 2019, 08:58

glestwid, USM выдает все, что ему вздумается. Порой лишнее и лепит все из разных репозиториев.
Лучше пользуйтесь https://pkgs.org/ или https://slackbuilds.org/
Linux 5.4.0-rc7-porteus #2 SMP Tue Nov 12 17:45:45 UTC 2019 x86_64 Intel(R) Core(TM) i5-6600K CPU @ 3.50GHz GenuineIntel GNU/Linux
MS-7A12 » [AMD/ATI] Tobago PRO [Radeon R7 360 / R9 360 OEM] (rev 81) » Vengeance LPX 16GB DDR4 K2 3200MHz C16

dZ0TFR
Black ninja
Black ninja
Posts: 51
Joined: 07 Apr 2019, 07:16
Distribution: Porteus-4.0

Вопросы про porteus

Post#288 by dZ0TFR » 20 Nov 2019, 09:20

Можно попробовать собрать питон с параметром --enable-unicode=ucs4, но пока сам не пробовал (не на чем).

glestwid
Black ninja
Black ninja
Posts: 85
Joined: 09 Jan 2018, 20:05
Distribution: Porteus-KDE 3.2.2 i586

Вопросы про porteus

Post#289 by glestwid » 20 Nov 2019, 09:55

Blaze wrote:
20 Nov 2019, 08:58
glestwid, USM выдает все, что ему вздумается. Порой лишнее и лепит все из разных репозиториев.
Лучше пользуйтесь https://pkgs.org/ или https://slackbuilds.org/
Взял Gajim с slackware.pkgs.org. Руками добавил все недостающие TXZ, запускаю:
guest@porteus:/root$ gajim
===============================================================================
PyOpenSSL not found, falling back to Python builtin SSL objects (insecure).
===============================================================================
Traceback (most recent call last):
File "gajim.py", line 230, in <module>
gobject.set_prgname('gajim')
File "/usr/share/gajim/src/common/demandimport.py", line 86, in __getattribute__
self._load()
File "/usr/share/gajim/src/common/demandimport.py", line 58, in _load
mod = _origimport(head, globals, locals)
ImportError: No module named gobject


Что на этот раз не так ему?

glestwid
Black ninja
Black ninja
Posts: 85
Joined: 09 Jan 2018, 20:05
Distribution: Porteus-KDE 3.2.2 i586

Вопросы про porteus

Post#290 by glestwid » 20 Nov 2019, 13:07

Пытаюсь поставить pidgin. Нашел https://slackware.pkgs.org/14.2/slackwa ... i586-2.txz, сделал из него XZM, поставил. Запускаю pidgin - получаю:
root@porteus:/tmp/usm# pidgin
pidgin: error while loading shared libraries: libgtkspell.so.0: cannot open shared object file: No such file or directory


Где взять правильную libgtkspell.so? Вижу только RPM с ней, но он не хочет конвертитьс в XZM:
root@porteus:/tmp/usm# rpm2xzm libgtkspell-2.0.16-alt3.i586.rpm

Slackware package maker, version 3.1415927.

Searching for symbolic links:
usr/lib/libgtkspell.so.0 libgtkspell.so.0.0.0

Making symbolic link creation script:
( cd usr/lib ; rm -rf libgtkspell.so.0 )
( cd usr/lib ; ln -sf libgtkspell.so.0.0.0 libgtkspell.so.0 )

It is recommended that you make these lines your new installation script.

Would you like to make this stuff the install script for this package
and remove the symbolic links ([y]es, [n]o)? y


Removing symbolic links:
removed './usr/lib/libgtkspell.so.0'

Creating your new ./install/doinst.sh...

This next step is optional - you can set the directories in your package
to some sane permissions. If any of the directories in your package have
special permissions, then DO NOT reset them here!

Would you like to reset all directory permissions to 755 (drwxr-xr-x) and
directory ownerships to root.root ([y]es, [n]o)? n

Creating Slackware package: /tmp/rpm2xzm1465/libgtkspell-2.0.16-alt3.i586.txz

xz: (stdin): Cannot allocate memory
./
install/
install/doinst.sh
usr/
usr/share/
usr/share/locale/
usr/share/locale/eu/
usr/share/locale/eu/LC_MESSAGES/
usr/share/locale/eu/LC_MESSAGES/gtkspell.mo
usr/share/locale/th/
usr/share/locale/th/LC_MESSAGES/
usr/share/locale/th/LC_MESSAGES/gtkspell.mo
usr/share/locale/af/
usr/share/locale/af/LC_MESSAGES/
usr/share/locale/af/LC_MESSAGES/gtkspell.mo
ERROR: xz -9 --threads=2 -c returned error code 1 -- makepkg failed.
Verifying package libgtkspell-2.0.16-alt3.i586.txz.
xz: (stdin): File format not recognized
Unable to install /tmp/rpm2xzm1465/libgtkspell-2.0.16-alt3.i586.txz: tar archive is corrupt (tar returned error code 2)
error installing /tmp/rpm2xzm1465/libgtkspell-2.0.16-alt3.i586.txz package
mv: cannot stat 'libgtkspell-2.0.16-alt3.i586.xzm': No such file or directory

dZ0TFR
Black ninja
Black ninja
Posts: 51
Joined: 07 Apr 2019, 07:16
Distribution: Porteus-4.0

Вопросы про porteus

Post#291 by dZ0TFR » 20 Nov 2019, 13:40

glestwid, usm -g pidgin-2.10.12

На заметку: Если нужно искать какие-то библиотеки: usm -s libgtkspell.so

glestwid
Black ninja
Black ninja
Posts: 85
Joined: 09 Jan 2018, 20:05
Distribution: Porteus-KDE 3.2.2 i586

Вопросы про porteus

Post#292 by glestwid » 20 Nov 2019, 13:49

Так мне сегодня же отсоветовали пользоваться USM именно из-за того, что он зависимости некорректно отслеживает, если вообще отслеживает. Хотя именно сейчас usm -g pidgin-2.10.12 помогло. Спасибо!
Last edited by glestwid on 20 Nov 2019, 13:57, edited 1 time in total.

dZ0TFR
Black ninja
Black ninja
Posts: 51
Joined: 07 Apr 2019, 07:16
Distribution: Porteus-4.0

Вопросы про porteus

Post#293 by dZ0TFR » 20 Nov 2019, 13:52

usm ошибается конечно, но всяко лучше им, чем вручную по помойкам, эээ... чужим репозиториям искать. Он и зависимости отслеживает с горем пополам. А вручную каждую зависимость искать... Это слакварь получается...

dZ0TFR
Black ninja
Black ninja
Posts: 51
Joined: 07 Apr 2019, 07:16
Distribution: Porteus-4.0

Вопросы про porteus

Post#294 by dZ0TFR » 20 Nov 2019, 15:26

Небольшой имхо-шный мануал по поиску программ для Porteus-4.0 x86 и их установке:

Способ #1 (самый простой и самый правильный):
  • usm -s program (поиск программы)
  • usm -s library.so.0.1 (поиск библиотеки. Важно! название библиотеки должно быть полным!)


Способ #2 (если usm не находит нужную нам программу или библиотеку):
  • slakfinder.org
выбираем на сайте версию Porteus, разрядность, в поле SEARCH или FILENAME вводим название нужной программы. Найденную прогу сохраняем на диск, переходим в место сохранения, преобразуем в xzm:
    1) txz2xzm program.txz
    2) mv program.xzm /mnt/sda1/porteus/modules
    3) activate /mnt/sda1/porteus/modules/program.xzm


    Способ #3 (если usm не находит нужную нам программу или библиотеку)
    • pkgs.org
    вбиваем на сайте имя искомой проги в поле EXAMPLE. Из множества дистрибутивов выбираем пакеты только Slackware-14.2. Внимание! Качать пакеты от других дистров можно только в крайнем случае! Найденную прогу сохраняем на диск, переходим в место сохранения, преобразуем в xzm:
      1) txz2xzm program.txz
      2) mv program.xzm /mnt/sda1/porteus/modules
      3) activate /mnt/sda1/porteus/modules/program.xzm

      ================================================================

      dZ0TFR
      Black ninja
      Black ninja
      Posts: 51
      Joined: 07 Apr 2019, 07:16
      Distribution: Porteus-4.0

      Вопросы про porteus

      Post#295 by dZ0TFR » 20 Nov 2019, 15:46

      Я вручную скачал, преобразовал и активировал модуль. Почему прога не работает и выдает ошибки?!

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


      Способ #1 (самый простой):
      • slackbuilds.org
      Заходим на сайт, вбиваем в верхнем поле название вашей программы (которая не работает) и выбираем ее из списка. Смотрим на странице англоязычную надпись "This requires:" и после нее идут названия зависимостей для вашей программы, которые необходимо установить. Помните! У этих зависимостей могут быть и свои зависимости! Поэтому зайдите на странички этих зависимостей и посмотрите, есть ли у них надпись "This requires:"


      Способ #2 (еще один способ поиска зависимостей):
      • packages.salixos.org
      Вбиваем название программы, версию Porteus 14.2, разрядность i486, выбираем найденную прогу из списка и смотрим надпись "Dependencies". Это и есть наши зависимости, без которых прога не работает. Внимание! У зависимостей могут быть свои зависимости, помните?


      Способ #3 (последний способ для новичка, но не для профи):
      • ldd
      Утилита ldd часто выручает, когда ваша программа не запускается и выдает ошибки. Она позволяет посмотреть недостающие вашей программе библиотеки.
      1) which programa (выясняем путь вашей программы, например будет /usr/bin/programa)
      2) ldd /usr/bin/programa | grep NOT (найдет недостающие библиотеки, которые мы уже умеем искать способами описанными вначале (usm, slakfinder.org, pkgs.org и т.д).

      =================================================================

      Post Reply