CISCO PacketTracer 7 on Debian Stretch.
UPDATE Jan/2018:
As netAcad released PacketTracer 7.1.1 for new CCNA courses, I have dealt with making it to run on Debian BUster (but, almost sure it works also for Stretch)... so keep an eye on article PacketTracer 7.1.1 on Debian Buster
Hi again people.
I've been investing some time on how to get CISCO's incredible network simulation software Packet Tracer to run on my Debian Stretch desktop.
Although I managed to do this after several months, I have being struggling trying to get it to work the same way I managed to get former 6.x versions on Debian, that is, using 100% Debian repo packaged libraries.... to no avail.
Installation of PacketTracer has a long history of trouble on Linux, but there are subtle differences between classic PT troubles and the new 7.0 troubles:
In 6.x versions or older, either you use the installer or not, you'll end up with a non-working install, lacking libraries (even i386 versions of the on amd64 systems) that had to be manually installed in order for it to run.
So, with or without running the installer, provide your system had the appropriate library packages installed, the PT binary, will run.
Now, in 7.0, there is no way to get the required libraries from Debian packages on the oficial repository (at least I have not managed to success)... Instead, after running the installer, it provides a complete set of libraries under a lib folder under installation target folder.
The binary file /usr/local/bin/packettracer
just points to a shell script, not an actual binary executable, on install folder, that is essentially a wrapper script that prepares running environment to look for libraries under lib folder before executing the actual PacketTracer7 binary.
But even then, the program will not run...
So, let's see how to get it running...
Installing PacktTracer7
So, before continue, let's clarify that I do not like the proposed installation folder /opt/pt
by the installer, but, instead I usually put non-packaged software under /usr/local
(I found this more Debian friendly... but maybe I'm wrong), so, my installation folder is (and is shown in examples) at /usr/local/PacketTracer70
.
So, provide you're installing the 64bit version, you'll have the following file PacketTracer70_64bit_linux.tar.gz, you have to uncompress it, enter the uncompresed folder and run the installer as root (either su or run the install command as sudo):
tar -xvf PacketTracer70_64bit_linux.tar.gz
cd PacketTracer70
sudo ./install
It may look like this:
alex@debian:~$
alex@debian:~$ ls *PacketTracer*
PacketTracer70_64bit_linux.tar.gz
alex@debian:~$ tar -xvf PacketTracer70_64bit_linux.tar.gz
...extracting output ommited
alex@debian:~$
alex@debian:~$ cd PacketTracer70
alex@debian:~/PacketTracer70$ su
Password:
root@debian:/home/alex/PacketTracer70# ./install
You'll be presented CISCO EULA (hit ENTER)
You'll have to scroll down until you'll have on screen all the text, be careful near the end, at around 90%, if you press down too hard you'll miss the accept/deny prompt and you'll hace to restart the installer!!!
So, after reaching 100% of the EULA text shown, you'll be prompted to accept or decline the EULA (hit Y)
In next step the installer will ask you for a path where you want PacketTracer to be installed ( either hit ENTER to install on proposed default location, or write your path and hit ENTER)
Finally, you'll be asked whether you want a link to the binary (actually a wrapper shell script) under usr/local/bin
.. (hit Y).
You're officially done:
Type "packettracer" in a terminal to start Cisco Packet Tracer
Writing PT7HOME environment variable to /etc/profile
Cisco Packet Tracer 7.0 installed successfully
Making it to actually run
So, just as suggested, let's try to run PacketTracer7:
alex@debian:~$ packettracer
packettracer: error while loading shared libraries: libcrypto.so.1.0.0: cannot open shared object file: No such file or directory
So, we are stuck here, since at Debian Stretch we no longer have libssl1.0.0 ... It is available but on Jessie Backports, but not in Stretch.
A look on PacketTracer install lib folder reveals all the stuff it needs and saves us to manually install, but note, among the collection of libraries there, libcrypto.so.1.0.0 is missing, so it seems CISCO guys assumed most Linux systems still use it.
alex@debian :~$ ls -l /usr/local/PacketTracer70/lib
total 48232
lrwxrwxrwx 1 root staff 22 Oct 7 20:50 libQt3Support.so -> libQt3Support.so.4.8.2
lrwxrwxrwx 1 root staff 22 Oct 7 20:50 libQt3Support.so.4 -> libQt3Support.so.4.8.2
lrwxrwxrwx 1 root staff 22 Oct 7 20:50 libQt3Support.so.4.8 -> libQt3Support.so.4.8.2
-rwxr-xr-x 1 root staff 3113872 Oct 7 20:50 libQt3Support.so.4.8.2
lrwxrwxrwx 1 root staff 18 Oct 7 20:50 libQtCore.so -> libQtCore.so.4.8.2
lrwxrwxrwx 1 root staff 18 Oct 7 20:50 libQtCore.so.4 -> libQtCore.so.4.8.2
lrwxrwxrwx 1 root staff 18 Oct 7 20:50 libQtCore.so.4.8 -> libQtCore.so.4.8.2
-rwxr-xr-x 1 root staff 3055616 Oct 7 20:50 libQtCore.so.4.8.2
lrwxrwxrwx 1 root staff 17 Oct 7 20:50 libQtGui.so -> libQtGui.so.4.8.2
lrwxrwxrwx 1 root staff 17 Oct 7 20:50 libQtGui.so.4 -> libQtGui.so.4.8.2
lrwxrwxrwx 1 root staff 17 Oct 7 20:50 libQtGui.so.4.8 -> libQtGui.so.4.8.2
-rwxr-xr-x 1 root staff 11381296 Oct 7 20:50 libQtGui.so.4.8.2
lrwxrwxrwx 1 root staff 21 Oct 7 20:50 libQtNetwork.so -> libQtNetwork.so.4.8.2
lrwxrwxrwx 1 root staff 21 Oct 7 20:50 libQtNetwork.so.4 -> libQtNetwork.so.4.8.2
lrwxrwxrwx 1 root staff 21 Oct 7 20:50 libQtNetwork.so.4.8 -> libQtNetwork.so.4.8.2
-rwxr-xr-x 1 root staff 1359016 Oct 7 20:50 libQtNetwork.so.4.8.2
lrwxrwxrwx 1 root staff 20 Oct 7 20:50 libQtScript.so -> libQtScript.so.4.8.2
lrwxrwxrwx 1 root staff 20 Oct 7 20:50 libQtScript.so.4 -> libQtScript.so.4.8.2
lrwxrwxrwx 1 root staff 20 Oct 7 20:50 libQtScript.so.4.8 -> libQtScript.so.4.8.2
-rwxr-xr-x 1 root staff 2635944 Oct 7 20:50 libQtScript.so.4.8.2
lrwxrwxrwx 1 root staff 25 Oct 7 20:50 libQtScriptTools.so -> libQtScriptTools.so.4.8.2
lrwxrwxrwx 1 root staff 25 Oct 7 20:50 libQtScriptTools.so.4 -> libQtScriptTools.so.4.8.2
lrwxrwxrwx 1 root staff 25 Oct 7 20:50 libQtScriptTools.so.4.8 -> libQtScriptTools.so.4.8.2
-rwxr-xr-x 1 root staff 772944 Oct 7 20:50 libQtScriptTools.so.4.8.2
lrwxrwxrwx 1 root staff 17 Oct 7 20:50 libQtSql.so -> libQtSql.so.4.8.2
lrwxrwxrwx 1 root staff 17 Oct 7 20:50 libQtSql.so.4 -> libQtSql.so.4.8.2
lrwxrwxrwx 1 root staff 17 Oct 7 20:50 libQtSql.so.4.8 -> libQtSql.so.4.8.2
-rwxr-xr-x 1 root staff 267144 Oct 7 20:50 libQtSql.so.4.8.2
lrwxrwxrwx 1 root staff 17 Oct 7 20:50 libQtSvg.so -> libQtSvg.so.4.8.2
lrwxrwxrwx 1 root staff 17 Oct 7 20:50 libQtSvg.so.4 -> libQtSvg.so.4.8.2
lrwxrwxrwx 1 root staff 17 Oct 7 20:50 libQtSvg.so.4.8 -> libQtSvg.so.4.8.2
-rwxr-xr-x 1 root staff 358096 Oct 7 20:50 libQtSvg.so.4.8.2
lrwxrwxrwx 1 root staff 20 Oct 7 20:50 libQtWebKit.so -> libQtWebKit.so.4.9.2
lrwxrwxrwx 1 root staff 20 Oct 7 20:50 libQtWebKit.so.4 -> libQtWebKit.so.4.9.2
lrwxrwxrwx 1 root staff 20 Oct 7 20:50 libQtWebKit.so.4.9 -> libQtWebKit.so.4.9.2
-rwxr-xr-x 1 root staff 26150752 Oct 7 20:50 libQtWebKit.so.4.9.2
lrwxrwxrwx 1 root staff 17 Oct 7 20:50 libQtXml.so -> libQtXml.so.4.8.2
lrwxrwxrwx 1 root staff 17 Oct 7 20:50 libQtXml.so.4 -> libQtXml.so.4.8.2
lrwxrwxrwx 1 root staff 17 Oct 7 20:50 libQtXml.so.4.8 -> libQtXml.so.4.8.2
-rwxr-xr-x 1 root staff 278344 Oct 7 20:50 libQtXml.so.4.8.2
My guess is that, chances are, that copying Debian Stretch packaged current library /usr/lib/x86_64-linux-gnu/libcrypto.so.1.0.2
at /PTinstallfolder/lib/libcrypto.so.1.0.2
and linking it there as libcrypto.so.1.0.0 may work... but it is way too ugly to even try it.
So, as a last resort, googling around I got libcrypto.so.1.0.0 amd64 deb package from Debian Jessie Backports. I tried it, and it installed smoothly, no dependencies, no conflicts, no interference with current libcrypto.so.1.0.2, it just provides libcrypto.so.1.0.0 aditionally if required, so its perfect!!! ... and then Packettracer finally started.
You may download it here: libssl1.0.0_1.0.1t-1+deb8u3_amd64.deb
Installation is as easy as:
dpkg -i ./libssl1.0.0_1.0.1t-1+deb8u3_amd64.deb
Now have fun with your labs!!!