LINUX.ORG.RU

Не удается запустить Cisco Packet Tracer

 


0

2

Здравствуйте. Уже где-то неделю мучаюсь с уставкой пакет трейсера. ОС: Debian testing, amd64. Сначала пробовал поставить с убунтовского deb-пакета. Лог установки:

Do you accept the terms of this EULA? (Y)es/(N)o

You have accepted the terms to the EULA. Congratulations. Packet Tracer will now be installed.
Attempting to install package now
Выбор ранее не выбранного пакета packettracer.
(Чтение базы данных … на данный момент установлено 47380 файлов и каталогов.)
Preparing to unpack PacketTracer-6.0.1-u.i386.deb ...
Unpacking packettracer (6.0.1) ...
Настраивается пакет packettracer (6.0.1) …
Installed files. Please wait for post-install operations to finish..
/usr/local/PacketTracer6/registerPktsGnome: line 1: xdg-desktop-menu: команда не найдена
gtk-update-icon-cache: No theme index file.
/var/lib/dpkg/info/packettracer.postinst: line 11: desktop-file-install: команда не найдена
Writing PT6HOME environment variable to /etc/profile
Processing triggers for mime-support (3.54) ...

При запуске выдает:

raziel@debian:~$ /usr/local/PacketTracer6/packettracer 
Starting Packet Tracer 6.0.1 
И на этом все, возвращает сразу же управление командной строкой. Пробовал запускать файл:
raziel@debian:~$ /usr/local/PacketTracer6/bin/PacketTracer6 
bash: /usr/local/PacketTracer6/bin/PacketTracer6: Нет такого файла или каталога
Пробовал ставить с универсального установщика. Лог:
Do you accept the terms of the EULA? (Y)es/(N)o
y
You have accepted the terms to the EULA. Congratulations. Packet Tracer will now be installed.
Enter location to install Cisco Packet Tracer or press enter for default [/opt/pt]:                   
Installing into /opt/pt

Not able to create and copy files to /opt/pt
Should we try to gain root access with sudo? [Yn] y
[sudo] password for raziel: 
Installing into /opt/pt
Copied all files successfully to /opt/pt


Should we create a symbolic link "packettracer" in /usr/local/bin for easy Cisco Packet Tracer startup? [Yn] y
Type "packettracer" in a terminal to start Cisco Packet Tracer
Writing PT5HOME environment variable to /etc/profile

Cisco Packet Tracer 6.0.1 installed successfully[]
Результат такой же. Надеюсь на вашу помощь.


Ответ на: комментарий от Raziel
bash: /usr/local/PacketTracer6/bin/PacketTracer6: Нет такого файла или каталога

обычно говорит о том, что либо исполняемый файл не соответствует архитектуре или OS (file /usr/local/PacketTracer6/bin/PacketTracer6), либо использует динамический линковщик другой версии.

Например под x86-64 запустить 32битное приложение без glibc-multilib нельзя.

vel ★★★★★
()
Ответ на: комментарий от frob

Это не важно.Это просто говорит о том, что не удалось создать запись в xdg-menu, которым я,собственно, не пользуюсь (awesome wm).

Raziel
() автор топика
Ответ на: комментарий от vel

Не нашел в репозиториях такого пакета... Поддержка multiarch стоит, если что. Вывод file:

raziel@debian:~$ file /usr/local/PacketTracer6/bin/PacketTracer6 
/usr/local/PacketTracer6/bin/PacketTracer6: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.8, not stripped

Raziel
() автор топика
Ответ на: комментарий от Raziel

Я не знаю как такое сделать человеческим путем, знаю только сложный способ

strings /usr/local/PacketTracer6/bin/PacketTracer6|head -1
Если в системе нет файла который дает вывод этой конструкции, то бинарик не запускается именно с таким сообщением об ошибке «нет такого файла или каталога»

x86_64 (amd64)

strings /bin/arch | head -1
/lib64/ld-linux-x86-64.so.2
на i386 (x86) glibc-2
strings /bin/arch | head -1
/lib/ld-linux.so.2

на i386 (x86) libc.so.5

strings /bin/arch | head -1
/lib/ld-linux.so.1

На стековерфлов предлогают конструкцию «readelf -a <file> | grep interpreter:»

vel ★★★★★
()
Последнее исправление: vel (всего исправлений: 1)
Ответ на: комментарий от vel

Здраствуйте, долго не отвечал, времени все не было :(

Вывод:

raziel@debian:~$ strings /usr/local/PacketTracer6/bin/PacketTracer6 | head -1
/lib/ld-linux.so.2
Остальные команды не работали, у меня в системе нет файла /bin/arch. Вообще, пакет трейсер завелся под вайном без проблем, но хотелось бы заставить работать нативную версию.

Raziel
() автор топика
Ответ на: комментарий от vel
raziel@debian:~$ ls -l /lib/ld-linux.so.2
lrwxrwxrwx 1 root root 25 мар  2 17:47 /lib/ld-linux.so.2 -> i386-linux-gnu/ld-2.18.so
raziel@debian:~$ ldd /usr/local/PacketTracer6/bin/PacketTracer6
	linux-gate.so.1 (0xf7742000)
	libQtWebKit.so.4 => not found
	libQtScript.so.4 => not found
	libQt3Support.so.4 => not found
	libQtSql.so.4 => not found
	libQtXml.so.4 => not found
	libQtGui.so.4 => not found
	libXext.so.6 => /usr/lib/i386-linux-gnu/libXext.so.6 (0xf771c000)
	libX11.so.6 => /usr/lib/i386-linux-gnu/libX11.so.6 (0xf75e3000)
	libQtNetwork.so.4 => not found
	libQtCore.so.4 => not found
	librt.so.1 => /lib/i386-linux-gnu/i686/cmov/librt.so.1 (0xf75da000)
	libpthread.so.0 => /lib/i386-linux-gnu/i686/cmov/libpthread.so.0 (0xf75be000)
	libdl.so.2 => /lib/i386-linux-gnu/i686/cmov/libdl.so.2 (0xf75b8000)
	libstdc++.so.6 => /usr/lib/i386-linux-gnu/libstdc++.so.6 (0xf74cf000)
	libm.so.6 => /lib/i386-linux-gnu/i686/cmov/libm.so.6 (0xf7489000)
	libgcc_s.so.1 => /lib/i386-linux-gnu/libgcc_s.so.1 (0xf746d000)
	libc.so.6 => /lib/i386-linux-gnu/i686/cmov/libc.so.6 (0xf72c2000)
	libxcb.so.1 => /usr/lib/i386-linux-gnu/libxcb.so.1 (0xf729f000)
	/lib/ld-linux.so.2 (0xf7743000)
	libXau.so.6 => /usr/lib/i386-linux-gnu/libXau.so.6 (0xf729b000)
	libXdmcp.so.6 => /usr/lib/i386-linux-gnu/libXdmcp.so.6 (0xf7295000)

То что libQt* не найдены, думаю, не проблема, т.к. они есть в /usr/local/PacketTracer6/lib/

Raziel
() автор топика
Ответ на: комментарий от Raziel

Если пути к QT-либам нет в /etc/ld.so.conf, то нужно переопределять LD_LIBRARY_PATH.

Есть подозрение, что для запуска этого PT6 есть скрипт, который все это делает сам.

vel ★★★★★
()
Ответ на: комментарий от vel

Да, это делает скрипт.

raziel@debian:~$ cat /usr/local/PacketTracer5/packettracer
#!/bin/bash

echo Starting Packet Tracer 5.3

PTDIR=/usr/local/PacketTracer5
export LD_LIBRARY_PATH=$PTDIR/lib
pushd $PTDIR/bin > /dev/null
./PacketTracer5 $@ > /dev/null 2>&1
popd > /dev/null
Попробовал пятую версию, все то же самое. Так что, проблема в бинарнике /usr/local/PacketTracer5/bin/PacketTracer5

Raziel
() автор топика
Ответ на: комментарий от Raziel

libQtWebKit.so.4 нету :(

Если знать с какой версией Qt оно собрано, то либы можно найти.

multilib это только базовые библиотеки, а если кто-то использует еще сторонние либы, то и их нужно добавлять.

Все либы которые известны системе «ldconfig -p»

vel ★★★★★
()
Ответ на: комментарий от vel

Это очень странно. Скрипт (который я показывал выше) должен же добавить /usr/local/PacketTracer5/lib/ в LD_LIBRARY_PATH, а там эти все либы есть:

root@debian:/home/raziel# ls /usr/local/PacketTracer5/lib/
libQt3Support.so	   libQtAssistantClient.so.4.4	  libQtGui.so	     libQtNetwork.so.4.4    libQtSql.so        libQtWebKit.so.4.4
libQt3Support.so.4	   libQtAssistantClient.so.4.4.3  libQtGui.so.4      libQtNetwork.so.4.4.3  libQtSql.so.4      libQtWebKit.so.4.4.3
libQt3Support.so.4.4	   libQtCore.so			  libQtGui.so.4.4    libQtScript.so	    libQtSql.so.4.4    libQtXml.so
libQt3Support.so.4.4.3	   libQtCore.so.4		  libQtGui.so.4.4.3  libQtScript.so.4	    libQtSql.so.4.4.3  libQtXml.so.4
libQtAssistantClient.so    libQtCore.so.4.4		  libQtNetwork.so    libQtScript.so.4.4     libQtWebKit.so     libQtXml.so.4.4
libQtAssistantClient.so.4  libQtCore.so.4.4.3		  libQtNetwork.so.4  libQtScript.so.4.4.3   libQtWebKit.so.4   libQtXml.so.4.4.3
К тому же, у меня в системе этот libQtWebKit тоже есть:
root@debian:/home/raziel# ldconfig -p | grep Qt
	libQtXmlPatterns.so.4 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libQtXmlPatterns.so.4
	libQtXml.so.4 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libQtXml.so.4
	libQtWebKit.so.4 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libQtWebKit.so.4
	libQtTest.so.4 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libQtTest.so.4
	libQtSvg.so.4 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libQtSvg.so.4
	libQtSql.so.4 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libQtSql.so.4
	libQtScriptTools.so.4 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libQtScriptTools.so.4
	libQtScript.so.4 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libQtScript.so.4
	libQtNetwork.so.4 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libQtNetwork.so.4
	libQtHelp.so.4 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libQtHelp.so.4
	libQtGui.so.4 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libQtGui.so.4
	libQtDesignerComponents.so.4 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libQtDesignerComponents.so.4
	libQtDesigner.so.4 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libQtDesigner.so.4
	libQtDeclarative.so.4 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libQtDeclarative.so.4
	libQtDBus.so.4 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libQtDBus.so.4
	libQtCore.so.4 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libQtCore.so.4
	libQtCLucene.so.4 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libQtCLucene.so.4
	libQtAssistantClient.so.4 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libQtAssistantClient.so.4

Raziel
() автор топика
Ответ на: комментарий от Raziel

гм. странно, что он не взял либу из PacketTracer5/lib. Но у LD_LIBRARY_PATH есть ограничения.

Я бы тупо добавил этот путь в /etc/ld.so.conf, запустил ldconfig и после этого попытался запустить бы пакеттрейсер. Если снова будет ошибка, то через strace.

vel ★★★★★
()
Ответ на: комментарий от Raziel

/etc/ld.so.nohwcap - это файл настроек - необязательный.

strace полезнее натравливать на бинарный файл, а не на шеловский скрипт или запускать strace c "-ff"

vel ★★★★★
()
Ответ на: комментарий от vel

вот вывод бинарника:

http://paste.debian.net/94838

Кстати, теперь при его запуске выдает:

root@debian:/home/raziel# /usr/local/PacketTracer5/bin/PacketTracer5 
/usr/local/PacketTracer5/bin/PacketTracer5: error while loading shared libraries: libXrandr.so.2: cannot open shared object file: No such file or directory
Raziel
() автор топика
Ответ на: комментарий от Raziel

так это с собой нужно иметь все иксовые либы :)

Понятно почему народ не парится и под вайном запускает :)

vel ★★★★★
()
Ответ на: комментарий от vel

Самое бредовое, что у меня эта либа есть.

root@debian:/home/raziel# ldconfig -p | grep Xrandr
	libXrandr.so.2 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libXrandr.so.2

Есть еще какие-нибудь идеи? :(

Raziel
() автор топика
Ответ на: комментарий от vel

Эх, ладно, я понял, что проще юзать вайн и не мучаться. Все равно спасибо вам, что помогали!

Raziel
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.