i686 из AppImage

Собственно, вопрос: как запустить ?

lib32 стоит весь, но... Пробую 32-разрядный софт из контейнера:

$ LD_PRELOAD=/usr/lib32/ ./fbreader.appimage
ERROR: ld.so: object '/usr/lib32/' from LD_PRELOAD cannot be preloaded (cannot read file data): ignored.
ERROR: ld.so: object '/usr/lib32/' from LD_PRELOAD cannot be preloaded (cannot read file data): ignored.
ERROR: ld.so: object '/usr/lib32/' from LD_PRELOAD cannot be preloaded (cannot read file data): ignored.
ERROR: ld.so: object '/usr/lib32/' from LD_PRELOAD cannot be preloaded (cannot read file data): ignored.
ERROR: ld.so: object '/usr/lib32/' from LD_PRELOAD cannot be preloaded (cannot read file data): ignored.
ERROR: ld.so: object '/usr/lib32/' from LD_PRELOAD cannot be preloaded (cannot read file data): ignored.
/tmp/.mount_JZRJna/usr/bin/fbreader.wrapper
ERROR: ld.so: object '/usr/lib32/' from LD_PRELOAD cannot be preloaded (cannot read file data): ignored.
ERROR: ld.so: object '/usr/lib32/' from LD_PRELOAD cannot be preloaded (cannot read file data): ignored.
ERROR: ld.so: object '/usr/lib32/' from LD_PRELOAD cannot be preloaded (cannot read file data): ignored.
ERROR: ld.so: object '/usr/lib32/' from LD_PRELOAD cannot be preloaded (cannot read file data): ignored.
ERROR: ld.so: object '/usr/lib32/' from LD_PRELOAD cannot be preloaded (cannot read file data): ignored.
ERROR: ld.so: object '/usr/lib32/' from LD_PRELOAD cannot be preloaded (cannot read file data): ignored.
ERROR: ld.so: object '/usr/lib32/' from LD_PRELOAD cannot be preloaded (cannot read file data): ignored.
ERROR: ld.so: object '/usr/lib32/' from LD_PRELOAD cannot be preloaded (cannot read file data): ignored.
ERROR: ld.so: object '/usr/lib32/' from LD_PRELOAD cannot be preloaded (cannot read file data): ignored.
ERROR: ld.so: object '/usr/lib32/ERROR: ld.so: object '/usr/lib32/' from LD_PRELOAD cannot be preloaded (cannot read file data): ignored.
' from LD_PRELOAD cannot be preloaded (cannot read file data): ignored.
/home/mylogin/.cache/thumbnails/normal/c99a7c86800bd96d3c863b2b87be006c.png is missing. Please run ./bin//fbreader.wrapper from within an AppImage.
ERROR: ld.so: object '/usr/lib32/' from LD_PRELOAD cannot be preloaded (cannot read file data): ignored.
/tmp/.mount_JZRJna/usr/bin/fbreader: symbol lookup error: /usr/lib/libfontconfig.so.1: undefined symbol: FT_Done_MM_Var
kotnaton
usr/lib/libfontconfig.so.1: undefined symbol
Fontconfig старый в образ закинуть,возможно с полным комплектом freetype2 pango harfbuzz
А с реп fbreader не устраивает?
kotnaton
$ LD_PRELOAD=/usr/lib32/ ./fbreader.appimage
Пробовал запустить обычной командой fbreader.appimage ? - в большинстве случаев это работает и посмотреть на что будет ругаться, но скорее всего останется ошибка, связанная с error: /usr/lib/libfontconfig.so.1 ... а ошибки типа ERROR: ld.so: object '/usr/lib32/' from LD_PRELOAD … должны исчезнуть.

PS - насколько я понимаю, использование LD_PRELOAD вряд ли можно использовать с AppImage - все что нужно должно находится внутри … хотя могу и ошибаться - плотно с этой штукой не работал.

EDIT 1 - был не прав в части использования с AppImage LD_PRELOAD - почитал DOC - использовать можно.
Кстати, наткнулся на это - подробно не читал, но там тоже решается проблема libfontconfig.so при использовании AppImage
Ошибки не исчезают с опытом - они просто умнеют
vs220
А с реп fbreader не устраивает?
fbreader взят наугад, для примера - мне важно понять что не так делается :)

Ну, ладно, другой пример попытки запуска 32 разрядного application, игра dukenukem:
./dn.appimage
/tmp/.mount_c8MHLz/mupen64plus: symbol lookup error: /tmp/.mount_c8MHLz/librt.so.1: undefined symbol: __clock_nanosleep, version GLIBC_PRIVATE

Мне кажется, что проблема в том, что не грузятся библиотеки /usr/lib32, о чём, собственно, и указывает вывод на прямое указание директории с либами:
ERROR: ld.so: object '/usr/lib32/ERROR: ld.so: object '/usr/lib32/' from LD_PRELOAD cannot be preloaded (cannot read file data): ignored.
AppImage в топку! особенно если в нем не хватает запчастей, что бы извращаться с LD_PRELOAD!
смысл в AppImage в том что все свое ношу с собой.
тогда нафига переопределять содержащиеся в AppImage библиотеки????
Псевдографический инсталлятор Arch Linux ver. 3.8.2
Благодарности принимаются на ЯД 410012815723874
kotnaton
понять что не так делается :)

man ld.so
LD_LIBRARY_PATH
Список разделённых двоеточием каталогов, в которых производится поиск ELF библиотек в момент выполнения. Похоже на переменную окружения PATH .
LD_PRELOAD
Заданный пользователем список дополнительных динамических ELF библиотек, разделённых пробелами, которые будут загружены перед всеми другими. Это можно использовать для выборочного перекрытия функций в других динамических библиотеках. Для бинарных файлов setuid/setgid, будут загружены только библиотеки в стандартных каталогах поиска и которые также имеют setuid.

по моему нельзя LD_PRELOAD=каталог ( LD_PRELOAD=/usr/lib32 если это не опечатка с сокращением у вас)

А по AppImage надо разбираться конкретно с каждым
kotnaton
symbol lookup error: /tmp/.mount_c8MHLz/librt.so.1: undefined symbol: __clock_nanosleep, version GLIBC_PRIVATE
скорее всего версия glibc

kotnaton
/tmp/.mount_JZRJna/usr/bin/fbreader: symbol lookup error: /usr/lib/libfontconfig.so.1: undefined symbol: FT_Done_MM_Var
версии fontconfig и freetype2 pango harfbuzz
vs220
по моему нельзя LD_PRELOAD=каталог ( LD_PRELOAD=/usr/lib32 если это не опечатка с сокращением у вас)
А я это и не заметил, зоркий сокол - конечно, должны быть указаны конкретные библиотеки … и даже загружаются они в определенном порядке
The items of the list can be separated by spaces or colons, and there is no support for escaping either separator.  The objects are searched for using the rules given under DESCRIPTION.  Objects are searched for and added to the link map in the left-to-right order specified in the list.

vs220
скорее всего версия glibc
fbreader AppImage старый и собран с версией glibc 2.14 (fbreader - ver: 0.99.4.glibc2.14) - и если что то будет добавляться из нового, имеющего отношение к glibc, то могут быть проблемы.
И вообще не плохо бы потрейсить и посмотреть в какие файлы лезет и что не нравится.

И соглашусь с nafanja
nafanja
смысл в AppImage в том что все свое ношу с собой.
И, наверное, проще собрать новый образ, чем шаманить старый.
Ошибки не исчезают с опытом - они просто умнеют
 
Зарегистрироваться или войдите чтобы оставить сообщение.