Установщик в архиве run, проехал как исполняемый и устанавливал, ошибки во время установки не выдавал. После установки запускаю, на нижней панели крутится иконка и исчезает.
Запускать нерепозиторный софт не из консоли плохая идея.
Скачал с офф. Сайта игру megaglast 3.9, установил а запустить на kdesktop 7.0.0 не удается, подскажите в чем может быть проблема.
Как два байта переслать. :)
Установка MegaGlest-Installer-3.9.0_i686_linux.run в систему на базе p7/branch
Качаем
$ wget -c http://sourceforge.net/projects/megaglest/files/megaglest_3.9.0/MegaGlest-Installer-3.9.0_i686_linux.run
Делаем исполняемым
chmod u+x MegaGlest-Installer-3.9.0_i686_linux.run
Устанавливаем в домашний каталог - путь оставляем по-дефолту
/home/user/megaglest/
Запускаем и... - от винта
$ ./megaglest
./megaglest: error while loading shared libraries: libvlccore.so.5: cannot open share
Ищем библиотеку
$ apt-cache search libvlccore
libvlc - VLC media player library
Устанавливаем
# apt-get install libvlc
Смотрим что внутри пакета
# rpm -ql libvlc
/usr/lib/libvlc.so.5
/usr/lib/libvlc.so.5.4.0
/usr/lib/libvlccore.so.7
/usr/lib/libvlccore.so.7.0.0
И что есть что
# ll /usr/lib/libvlc*
-rw-r--r-- 1 root root 999496 янв 26 18:14 /usr/lib/libvlccore.so.7.0.0
lrwxrwxrwx 1 root root 19 янв 26 18:14 /usr/lib/libvlccore.so.7 -> libvlccore.so.7.0.0
-rw-r--r-- 1 root root 116692 янв 26 18:14 /usr/lib/libvlc.so.5.4.0
lrwxrwxrwx 1 root root 15 янв 26 18:14 /usr/lib/libvlc.so.5 -> libvlc.so.5.4.0
Опять пробуем запуск - проглотит *.so.7 ? (не должно)
Не проглотило
$ ./megaglest
./megaglest: error while loading shared libraries: libvlccore.so.5: cannot open share
Подсовываем симлинк на симлинк (не на саму библиотеку!!! Иначе при первом же dist-upgrade эта конструкция может рухнуть)
# ln -s /usr/lib/libvlccore.so.7 /usr/lib/libvlccore.so.5
Опять запускаем
$ ./megaglest
./megaglest: /lib/liblber-2.4.so.2: no version information available (required by ./m
./megaglest: /usr/lib/libldap_r-2.4.so.2: no version information available (required
megaglest v3.9.0
Compiled using: GNUC: 40403 on: Nov 17 2013 15:00:04 platform: Linux endianness: litt
SVN: [Rev: 4846] - using STREFLOP [SSE] - [no-denormals]
Auto setting language [ru]
Вот теперь взлетело.
Примечания.Вообще-то делать так ликовку, как показано выше, некультурно. После десятка-другого симлинков, ваша система медленно превращается в помойку.
Здесь есть два варианта, которые будут кратко рассмотрены последовательно.
Вариант I
Положить симлинк в
# ln -s /usr/lib/libvlccore.so.7 /usr/local/lib/libvlccore.so.5
не забыв его при этом удалить из
# rm -f /usr/lib/libvlccore.so.5
если вы его там создавали.
Не наудаляйте системных симлинков или библиотек приведя систему в нерабочее состояние!!!
Вариант II
В принципе имея
$ ls -l ~/megaglest/lib/
итого 4640
-rw-r--r-- 1 user user 476612 янв 26 18:12 libfreetype.so.6
-rw-r--r-- 1 user user 470976 янв 26 18:11 libgcrypt.so.11
-rw-r--r-- 1 user user 629248 янв 26 18:11 libgnutls.so.26
-rwxr-xr-x 1 user user 2803142 янв 26 18:12 libvlccore.so.5
-rwxr-xr-x 1 user user 356730 янв 26 18:11 libvlc.so.5
drwxr-xr-x 4 user user 4096 янв 26 18:12 vlc
вы можете поиграться с пользовательской переменной
LD_LIBRARY_PATH$ LD_LIBRARY_PATH=/lib/
$ LD_LIBRARY_PATH=/usr/lib/:${LD_LIBRARY_PATH}
$ LD_LIBRARY_PATH=/home/user/megaglest/lib/:${LD_LIBRARY_PATH}
$ export LD_LIBRARY_PATH
$ echo $LD_LIBRARY_PATH
/home/user/megaglest/lib/:/usr/lib/:/lib/
Но тогда во время старта игра потребует отсутствующую в системе библитеку
$ ~/megaglest/megaglest
/home/user/megaglest/megaglest: error while loading shared libraries: libtasn1.so.3: cannot open shared object file: No such file or directory
Добавить её можно или так
# ln -s /usr/lib/libtasn1.so.6 /usr/local/lib/libtasn1.so.3
или так
$ ln -s /usr/lib/libtasn1.so.6 /home/user/megaglest/lib/libtasn1.so.3
После чего игра великолепно запустится
$ ~/megaglest/megaglest
/home/user/megaglest/megaglest: /lib/liblber-2.4.so.2: no version information available (required by /home/user/megaglest/megaglest)
/home/user/megaglest/megaglest: /usr/lib/libldap_r-2.4.so.2: no version information available (required by /home/user/megaglest/megaglest)
megaglest v3.9.0
Compiled using: GNUC: 40403 on: Nov 17 2013 15:00:04 platform: Linux endianness: little
SVN: [Rev: 4846] - using STREFLOP [SSE] - [no-denormals]
Обнулить переменную LD_LIBRARY_PATH в случае чего тоже можно (
Программирование под Linux)
$ LD_LIBRARY_PATH=""
$ export LD_LIBRARY_PATH
Библиотеки относятся к пакетам
# rpm -qf /usr/lib/libtasn1.so.6
libtasn1-3.3-alt1
# rpm -qf /usr/lib/libvlccore.so.7
libvlc-2.1.0-alt0.M70P.1
Вариант III
Его и последующих здесь не будет.
Честно говоря здесь вариантов реализации открывается бесконечное количество ограничеваемое только фантазией.
Но лучшим из них будет сборка из исходников.
Но в этом случае придётся вешать баг для p7/branch на пакеты
# rpm -qf /usr/lib/libtasn1.so.6
libtasn1-3.3-alt1
# rpm -qf /usr/lib/libvlccore.so.7
libvlc-2.1.0-alt0.M70P.1
по-поводу отсутствия симлинков
/usr/lib/libtasn1.so.3
/usr/lib/libvlccore.so.5
или править в исходниках на
/usr/lib/libtasn1.so.6
/usr/lib/libvlccore.so.7
megaglast 3.9, установил а запустить на kdesktop 7.0.0 не удается, подскажите в чем может быть проблема.
В отсутствии в пакете libvlc символического линка нужной версии. В данном случае чуть более старой.