Если установка dev-пакета не работает, вам может потребоваться экспортировать его в переменную LD_LIBRARY_PATH.
Вы можете найти ее с помощью find / -iname libXmu.so.6 -print 2>/dev/null, в моем случае это было в /usr/lib/x86_64-linux-gnu/libXmu.so.6 [ ! d1]
export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu/libXmu.so.6/lib:${LD_LIBRARY_PATH}
NB, если переменная $LD_LIBRARY_PATH пуста в начале, вы должны опустить lib... вперед.
Это не изменило для меня, и по этому совету я побежал sudo apt-get install ia32-libs, который в какой-то степени работал, меняя свое сообщение об ошибке на
error while loading shared libraries: libXm.so.4: cannot open shared object file: No such file or directory
(т. е. число 4 не 6)
Это может быть установлено с sudo apt-get install libxm4, результирующим местоположением, найденным с помощью find / -iname libXm.so.4 -print 2>/dev/null, и добавлено к $LD_LIBRARY_PATH с (например, для моего результата)
export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu/libXm.so.4/lib:${LD_LIBRARY_PATH}
Значение my LD_LIBRARY_PATH был /usr/lib/x86_64-linux-gnu/libXm.so.4/lib:/usr/lib/x86_64-linux-gnu/libXmu.so.6
Это не изменило сообщение об ошибке, требующее libXm.so.4. Для этой библиотеки (которую я вижу там, где есть локализация ...) я установил OpenMotif (не уверен, что это необходимо)
sudo apt-get install libmotif-dev
И, в конечном итоге, 32-битное требование пакета будет работать с Библиотеки libXmu.so.6 после установки ia32-libs, но для libXm.so.4 требуется явное объявление 32-разрядного состояния, используя ссылки в папке / usr / lib / i386-linx-gnu. Это было ясно, когда я побежал:
/usr/lib/i386-linux-gnu $ ls ../*/libXm*
(показывая заметно только ../i386-linux-gnu/libXmu.so.6), поэтому я создал одну такую ссылку с помощью:
sudo ln -s /usr/lib/x86_64-linux-gnu/libXm.so.4.0.4 /usr/lib/i386-linux-gnu/libXm.so.4
Затем мне удалось перейти на следующее сообщение об ошибке (woohoo!), как упоминалось в , этот совет :
error while loading shared libraries: libXm.so.4: wrong ELF class: ELFCLASS64
... который был нечетным, так как именно там я просто поместил ссылку ... Эта страница предложила обходной путь, но я не смог установить libx3motif.deb, поскольку amd64 нарушает зависимость (и я не собирался удалять такие важные компоненты для этого).
17] На этой странице подчеркивается необходимость иметь 32-разрядный пакет ранее в $LD_LIBRARY_PATH, чем 64-разрядный.
export LD_LIBRARY_PATH=/usr/lib/i386-linux-gnu/libXm.so.4/lib:/usr/lib/x86_64-linux-gnu/libXmu.so.6.2.0/lib:/usr/lib/x86_64-linux-gnu/libXmu.so.6
Это ничего не изменило. Я попытался скопировать файл в папку i386 и перенаправить ссылку
sudo cp /usr/lib/x86_64-linux-gnu/libXm.so.4.0.4 /usr/lib/i386-linux-gnu/libXm.so.4.0.4
sudo ln -fs /usr/lib/i386-linux-gnu/libXm.so.4.0.4 /usr/lib/i386-linux-gnu/libXm.so.4
(флаг -f заставляет перенацеливаться, т. Е. Вам не нужно rm и переделать]
Я боролся с этим еще немного (не совсем уверен, что это была последняя солома), пока не нашел успеха в этом .bashrc:
export LD_LIBRARY_PATH=/usr/lib/i386-linux-gnu/libXm.so.4/lib:/usr/lib/x86_64-linux-gnu/libXmu.so.6.2.0/lib:/usr/lib/x86_64-linux-gnu/libXmu.so.6
Итак, это доказательство того, что вы Не нужно устанавливать 32-битные пакеты, просто указывать символические ссылки в 32-битной папке lib на 64-битные пакеты ... Извините за TMI, но может быть полезно для тех, кто застрял в будущем