How to install and start Packet Tracer in Ubuntu

This tutorial explains how to install, activate and start Cisco packet tracer 7.1.1 in Ubuntu Linux step by step with screenshots. Learn why packet tracer 7.1.1 does not start in Ubuntu and how to troubleshoot packet tracer starting issue including installation and activation steps in detail with examples.

Downloading packet tracer

For this tutorial, I assume that you have already downloaded the latest version of packet tracer for Linux. In case you haven’t downloaded it, download it now from following link.

Cisco packet tracer 7.1.1 direct download link for Ubuntu Linux

To download earlier versions of packet tracer, check this tutorial.

Download Packet Tracer For Windows and Linux

It provides direct download links of all versions of packet tracer for linux.

Once downloading is finished, create a folder named packet on Desktop and move downloaded file in it.

create packet tracer folder

In folder, right click in empty space and click Open in Terminal.

open in terminal

Software management requires root access. We have two choices here; sudo access or dedicate root shell. Sudo access is a good choice if we have only few commands to run. If we have multiple commands to run under the root privilege, running them from a dedicate root shell is a better choice. A dedicated root shell prompt provides a fast and convenience way to execute the privileged commands.

Run following command to get the root shell prompt.

$sudo /bin/bash

sudo /bin/bash

Now extract the downloaded package file with following command

#tar –xvf [File Name]

You may use ls command before and after running this command to verify the extraction.

tar -xvf

Installing packet tracer

In extracted files, there is a script file named install. In order to install the packet tracer, we have to run this script file. Linux allows us to run any script file from any directory. To run a script file from current directory, we have to use ./ before it. The ./ means run the script file from current directory.

Run the installation script

#./install

This script takes three inputs from user; license agreement, installation directory and symbolic link.

License Agreement

To read the license agreement, press enter key. License agreement is more than ten pages in length. You may use space key to scroll it quickly. At the end of the agreement, type Y and press enter key to accept the agreement.

Installation Directory

By default packet tracer uses the directory /opt/pt for installation. To install it in default directory, simply press enter key when it asks. To install it in other directory, specify the directory path where you want to install it. I highly recommend you to install the packet tracer in default directory.

Symbolic Link

Symbolic link allows us to start the packet tracer from command prompt. To create a symbolic link, type Y when it prompts.

install paket tracer

Once packet tracer is installed, we have to run two more scripts; set_ptenv.sh and set_qtenv.sh.

These scripts set and configure necessary environment variables for packet tracer. By default these scripts are not executable. To make these scripts executable, run following commands.

#chmod +x set_ptenv.sh
#chmod +x set_qtenv.sh

make script executeable

Once scripts become executable, execute them just like we executed the installation script.

execute scripts

That’s all we need to install the packet tracer in Ubuntu. To apply the changes, restart the computer with following command.

restart the system

After reboot, run “packettracer” command from terminal to start it.

run packettracer command

If packet tracer starts normally, you are done. No additional steps are required. You can skip following section.

Why packet tracer does not start in Ubuntu

There is a known issue between packet tracer and Ubuntu which blocks packet tracer from starting. Packet tracer uses some old libraries which either have been updated or removed from Ubuntu. Until packet tracer updates these libraries we have to manually install them in all versions of Ubuntu starting from version 16.04.

Solving packet tracer startup problem in Ubuntu

As discussed earlier, software management requires root privilege, so let’s get root shell again.

 $sudo /bin/bash

root shell access

In order to install the missing libraries, we have to figure out the script file which starts packet tracer. By default when we run a command, shell executes its associated script file from its installation directory.

We installed packet tracer in /opt/pt. So let’s switch to /opt/pt directory and check the associated script file of packettracer command.

Following figure shows the contents of default script file of packettracer command.

packettracer script

As we can see in above figure, default script file of packettracer command executes another script file named PacketTracer7 from /opt/pt/bin directory. So the main script file which loads libraries and starts packet tracer is /opt/pt/bin/PacketTracer7.

Once we know the main script file which starts packet tracer by loading libraries, we can easily figure out the missing libraries with ldd and grep commands.

Switch to /opt/pt/bin directory and run following command.

#ldd PacketTracer7 | grep “not found”

ldd packettracer

As we can see in above output, following libraries are missing.

libQt5WebKitWidgets.so.5, libQt5WebKit.so.5, libQt5Multimedia.so.5, libQt5PrintSupport.so.5, libQt5Svg.so.5, libQt5Widgets.so.5, libQt5Gui.so.5, libQt5Network.so.5, libQt5Xml.so.5, libQt5Script.so.5, libQt5ScriptTools.so.5, libQt5core.so.5

Unless we install these libraries, packet tracer will not start in Ubuntu.

The good news is that all these libraries are shipped with packet tracer. While we install the packet tracer, all these libraries are also installed in /opt/pt/lib directory. The only problem is that while packet tracer starts, it looks for these libraries in /usr/lib/x86_64-linux-gnu directory instead of /opt/pt/lib directory.

So if we copy these libraries in /usr/lib/x86_64-linux-gnu directory from /opt/pt/lib directory, our problem should be solved. Let’s do it.

Since all our missing libraries starts with a common keyword libQt5, we can use a wildcard sign asterisk (*) with common keyword to copy all missing libraries with a single command.

#cp /opt/pt/lib/libQt5* /usr/lib/x86_64-linux-gnu

You may copy all missing libraries one by one by specifying their full name. But in that case you have to run copy command several times.

Once all libraries are copied, check the script file again.

copy missing libraries

As we can see in above output, problem is not fully solved. The libraries which we have just installed require following libraries.

libpng12.so.0, libicui18n.so.52 and libicuuc.so.52

The bad news is that, unlike previous libraries, packet tracer does not provide these libraries.

Downloading and installing the missing libraries.

From these libraries, the latest versions of libicui18n.so.52 and libicuuc.so.52 are already installed in Ubuntu. But packet tracer needs older versions of these libraries. Since the latest versions of these libraries are already installed in system we cannot install the older versions of these libraries from repositories through apt-get command.

To solve this issue, we have to download the older versions of these libraries from external repository. Required versions of these libraries are available in a Debian package named libicu52_52.1-3ubuntu0.7_amd64.deb.

This package is available in Ubuntu’s partner repository and can be downloaded from following URL.

http://launchpadlibrarian.net/341176988/libicu52_52.1-3ubuntu0.7_amd64.deb

To download and install this package, connect system with internet and run following commands

$wget http://launchpadlibrarian.net/341176988/libicu52_52.1-3ubuntu0.7_amd64.deb
$sudo dpkg –i libicu52_52.1-3ubuntu0.7_amd64.deb
$sudo updatedb

wget libicu52_52

Before going further, let’s check our script file again to ensure that these libraries do not depend on other libraries.

packet tracer missing library

As we can see in above output, these libraries are installed successfully and do not require any additional library. Now we have only one missing library the libpng12.so.0.

Ubuntu treats the library libpng12.so.0 as an add-on library. It does not install this library with default installation but if require, allows us to install. The library libpng12.so.0 is available as a package in following repository.

http://mirrors.kernel.org/ubuntu/

Since library is not installed and available as a package, we can install it from apt-get command.

Take the backup of current repository source file and open it for editing

#cp /etc/apt/ sources.list /etc/apt/sources.list.bak
#nano /etc/apt/ sources.list

backup source.list file

Add following lines in the end of the file and save the file

#Manually added source for libpng12-0 package
deb http://mirrors.kernel.org/ubuntu/ xenial main

update source list file

Now run following commands to install the library libpng12.so.0.

#apt-get update
#apt-get install libpng12-0

install missing libraries

Now check the script file again for missing libraries.

check package

As we can see in above output, there are no more missing libraries.

Once all necessary libraries are installed, restart the system.

restart the system

After restart, open the terminal and run "packettracer" command

packettracer command

On first run, it shows the location of the directory where it will save the user files. Click OK.

Starting from version 7, packet tracer needs activation. To activate it, create a free user account at following location

https://www.netacad.com/courses/packet-tracer/introduction-packet-tracer

netcad account

Once account is created, use the same user account to login in packet tracer.

activate packettracer

Once activated, packet tracer is ready to use with all features.

start packet tracer in ubuntu

Launching packet tracer from menu bar

If you do not wish to start the packet tracer from terminal, you can create a shortcut link in menu bar. To create a shortcut link in menu bar, use following steps: -

Open a terminal and run following commands.

$sudo cp /opt/pt/bin/Cisco-PacketTracer.desktop ~/.local/share/applications/Cisco-PacketTracer.desktop
$sudo nano ~/.local/share/applications/Cisco-PacketTracer.desktop

copy envirmental variable file

In opened file, change the directive Exec=packettracer %F to Exec=/opt/pt/packettracer and save the file.

update directives

Make this file executable with following command.

$sudo chmod +x ~/.local/share/applications/Cisco-PacketTracer.desktop

make script executable

That’s all we need to launch the packet tracer from menu bar. Close the terminal and click the Show Applications icon from left menu bar. In open pane, click All button. This will list all installed applications in system. Now click the Cisco packet tracer icon to start it.

start packet tracer from left bar

Alternatively you can use search box to search the packet tracer application.

search packet tracer

Once packet tracer is launched, a minimized control icon appears in both menu bar and task bar.

packet tracer started

That’s all for this tutorial. If you face any problem in installing, activating and starting packet tracer in Ubuntu, let me know. If you like this tutorial, please consider it sharing with friends. Sharing takes less than a minute, but can save someone else’s whole day.

ComputerNetworkingNotes CCNA Study Guide How to install and start Packet Tracer in Ubuntu