[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: choices



On 2016-04-12, Ivan Petrov wrote:

>> Я проверил 64-битный strace работает с 32 приложением, полагаю этого будет
>> достаточно для траблшутинга:
>>
>>    strace -e access,open ./app
>>
>> Недостающие либы искать через apt-file.
>>
>
> А что из нижеперечисленного либы, а что лишнее?
>
> ivan@mycompp:/media/SG1TB/dvd/choices-el-at/DATA$ strace -e access,open
> ./START_Linux
> [ Process PID=18116 runs in 32 bit mode. ]

> access("/home/ivan/.gtk-2.0/2.10.0/i486-pc-linux-gnu/engines/libsmooth.so",F_OK) = -1 ENOENT (No such file or directory)
> access("/home/ivan/.gtk-2.0/2.10.0/i486-pc-linux-gnu/engines/libsmooth.la",F_OK) = -1 ENOENT (No such file or directory)
> access("/home/ivan/.gtk-2.0/2.10.0/engines/libsmooth.so", F_OK) = -1 ENOENT (No such file or directory)
> access("/home/ivan/.gtk-2.0/2.10.0/engines/libsmooth.la", F_OK) = -1 ENOENT (No such file or directory)
> access("/home/ivan/.gtk-2.0/i486-pc-linux-gnu/engines/libsmooth.so", F_OK) = -1 ENOENT (No such file or directory)
> access("/home/ivan/.gtk-2.0/i486-pc-linux-gnu/engines/libsmooth.la", F_OK) = -1 ENOENT (No such file or directory)
> access("/home/ivan/.gtk-2.0/engines/libsmooth.so", F_OK) = -1 ENOENT (No such file or directory)
> access("/home/ivan/.gtk-2.0/engines/libsmooth.la", F_OK) = -1 ENOENT (No such file or directory)
> access("/usr/lib/i386-linux-gnu/gtk-2.0/2.10.0/i486-pc-linux-gnu/engines/libsmooth.so",F_OK) = -1 ENOENT (No such file or directory)
> access("/usr/lib/i386-linux-gnu/gtk-2.0/2.10.0/i486-pc-linux-gnu/engines/libsmooth.la",F_OK) = -1 ENOENT (No such file or directory)
> access("/usr/lib/i386-linux-gnu/gtk-2.0/2.10.0/engines/libsmooth.so", F_OK) = -1 ENOENT (No such file or directory)
> access("/usr/lib/i386-linux-gnu/gtk-2.0/2.10.0/engines/libsmooth.la", F_OK) = -1 ENOENT (No such file or directory)
> access("/usr/lib/i386-linux-gnu/gtk-2.0/i486-pc-linux-gnu/engines/libsmooth.so",F_OK) = -1 ENOENT (No such file or directory)
> access("/usr/lib/i386-linux-gnu/gtk-2.0/i486-pc-linux-gnu/engines/libsmooth.la",F_OK) = -1 ENOENT (No such file or directory)
> access("/usr/lib/i386-linux-gnu/gtk-2.0/engines/libsmooth.so", F_OK) = -1ENOENT (No such file or directory)
> access("/usr/lib/i386-linux-gnu/gtk-2.0/engines/libsmooth.la", F_OK) = -1ENOENT (No such file or directory)
> access("/usr/lib/gtk-2.0/2.10.0/i486-pc-linux-gnu/engines/libsmooth.so", F_OK) = -1 ENOENT (No such file or directory)
> access("/usr/lib/gtk-2.0/2.10.0/i486-pc-linux-gnu/engines/libsmooth.la", F_OK) = -1 ENOENT (No such file or directory)
> access("/usr/lib/gtk-2.0/2.10.0/engines/libsmooth.so", F_OK) = 0
> open("/usr/lib/gtk-2.0/2.10.0/engines/libsmooth.so", O_RDONLY|O_CLOEXEC) = 6
> open("/usr/lib/i386-linux-gnu/charset.alias", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)

> (START_Linux:18116): Gtk-WARNING **:
> /usr/lib/gtk-2.0/2.10.0/engines/libsmooth.so: неправильный класс ELF: ELFCLASS64

Тут ответ (по крайней мере первая проблема).

Видно что "libsmooth.so" ищется в 32-битных путях. И не находится.

Потом берется /usr/lib/gtk-2.0/2.10.0/engines/libsmooth.so

Модете перепроверить 64-битность этой библоитеки по:

  $ file /usr/lib/gtk-2.0/2.10.0/engines/libsmooth.so

В офиц. репозитории testing релиза Debian такой билиотеки нету:

  $ apt-file search libsmooth.so

Но она гуглится пакетом gtk2-engines-smooth, и баги есть до 2005 года, т.е.
что то старое:

  https://bugs.debian.org/cgi-bin/pkgreport.cgi?package=gtk2-engines-smooth;archive=both

Адаптилован ли был Debian в 2005 году под multiarch - вам расскажут эксперты,
у меня только ПК собственный в этом году появился.

Вытянуть старый 32-bit deb пакет можно тут:

  http://archive.debian.org/debian/pool/main/g/gtk-smooth-engine/

Судя по контенту официальной AMD64 сборки не было в Debian ((

Распакуйте deb, вытяните недостающий .so файл и разместите его по одному из
путей пути как укано в "access()" вызове.

Вполне может быть Вы просто не тот gtk2-engines-smooth поставили, работайте в
направлении установки 32-bit версии.

-- 
http://defun.work/


Reply to: