Cisco Packettracer 7.1 on Fedora 27

Cisco Packet Tracer 7.1 is created by Cisco SystemsTM and is now provided for free distribution. Self learners are now able to download Cisco Packet Tracer after registering on Cisco Netacad website. A free Packet Tracer 101 (English), a 1-hour self-paced online course is also offered to every registered (free) student to help them get started with PacketTracer 7.1.  So you can register and download from here.

The cisco packettracer 7.1 is available for GNU/Linux under the next requirements:

  • nss,linicu and ssl libraries.
  • QT5 script-tools, WebKit.
  • Cisco NetSpace account. (Mandatory)
  • x86_64 family processor (Cisco droped i86 support for Linux)

We need install some libraries as follows:

$ sudo dnf install zlib-devel ncurses-devel gtk2 glibc glibc-devel  \\
 libpng12 libstdc++ libX11-devel libXrender libXrandr libusb \\ 
 libXtst nss qt qtwebkit qt5-qtmultimedia qt5-qtwebkit

x86_64 (64bits)

Today most people have a x86_64 machine and this time we have three options for resolve the OpenSSL dependency:

1.- Just download the package generated by me and simply trust me (I call this the ugliest method because i don’t provide any warranty):

$ sudo dnf copr enable bt0dotninja/openssl-lib-compat
$ sudo dnf install openssl-lib-compat

2.- Compile your own version (I call the “just ugly” method because you can check the source):

First get the code:

$ wget http://archives.fedoraproject.org/pub/archive/fedora/linux/releases/17/Everything/source/SRPMS/o/openssl-1.0.0i-1.fc17.src.rpm
$ sudo dnf install @development-tools fedora-packager krb5-devel
$ sudo rpm -Uvh openssl-1.0.0i-1.fc17.src.rpm

For the build process we need super user access:

$ su -
# cd rpmbuild/SPECS/
# wget http://bt0.ninja/rpm/openssl-lib-compat-1.0.0.spec
# rpmbuild -bb openssl-lib-compat-1.0.0.spec
# rpm -i ../RPMS/x86_64/openssl-lib-compat-1.0.0i-1.fc27.x86_64.rpm
# exit

So many thanks to Yves L’ECUYER owner of http://www.deltaeridani.com, the original spec and the example are all from him.

Cisco Packet Tracer 7.1 will be downloaded from Cisco Networking Academy Portal,

$ tar -xzf PacketTracer71_*_linux.tar.gz && cd PacketTracer71
$ chmod +x install
$ sudo ./install

After accept the EULA, the installation begins, we need set the environment variables with the next command:

$ sudo chmod +x /opt/pt/set_ptenv.sh
$ sudo /opt/pt/set_ptenv.sh
$ sudo chmod +x /opt/pt/set_qtenv.sh
$ sudo /opt/pt/set_qtenv.sh

And finally fixing some missing dependencies (Many thanks to Robertpro for this fix )

# As user...
mkdir ~/.lib64
wget https://github.com/robertpro/tips/raw/59d14e7b148ebd10698ad3621b4c8a0bad38844b/packet_tracer_fedora26/libicudata.so.52 -O ~/.lib64/libicudata.so.52
wget https://github.com/robertpro/tips/raw/59d14e7b148ebd10698ad3621b4c8a0bad38844b/packet_tracer_fedora26/libicui18n.so.52 -O ~/.lib64/libicui18n.so.52
wget https://github.com/robertpro/tips/raw/59d14e7b148ebd10698ad3621b4c8a0bad38844b/packet_tracer_fedora26/libicuuc.so.52 -O ~/.lib64/libicuuc.so.52

# Adding new library path ONLY for the packettracer startup script 
sudo sed -i "s|lib|lib:$HOME/.lib64|g" /opt/pt/packettracer

If for some reason Robertpro stops hosting that libraries, you can download it from here.

Graphical Launcher on Gnome

With our favorite plain text editor we will edit the file /usr/share/applications/pt7.desktop as follows:

#!/usr/bin/env xdg-open
[Desktop Entry]
Name=PacketTracer 7.1 
Comment=Networking Cisco 
GenericName=PacketTracer 7.1 
Type=Application
Exec=/opt/pt/packettracer 
Icon=pt7
StartupNotify=true

Or as point me the always clever x3mboy, you can just:

$ sudo cp /opt/pt/bin/Cisco-PacketTracer.desktop /usr/share/applications/

 

Now we will run Cisco Packet Tracer 7.1 from our Desktop:

Enjoy 😛

 

42 comments

  1. Hi I did everything that is in the post however I can not get it to start packet Tracer 7.1. This is the error message /lib64/libcrypto.so.1.0.0: no version information available (required by ./PacketTracer7). Search the web but do not manage to correct this error. Can you help me please. Thanks and regards.

    1. Hello Charlie,

      I hope you are doing well,

      maybe if you can be more specific on your problem i will help you:

      what said ldd /opt/pt/bin/PacketTracer7?

      You copy the libicu-* to your home??
      Regards

      P.D: Sorry for the delay, u know Holidays

      1. Hi, i did all those steps on my fresh Fedora 27, but it just keeps starting but never starts, i found this with ldd:
        [root@Fedora23 ~]# ldd /opt/pt/bin/PacketTracer7 |more
        /opt/pt/bin/PacketTracer7: /lib64/libcrypto.so.1.0.0: no version information available (required by /opt/pt/bin/PacketTracer7)
        linux-vdso.so.1 (0x00007ffd5ed4f000)
        libcrypto.so.1.0.0 => /lib64/libcrypto.so.1.0.0 (0x00007fd1f2a62000)

        I did all the steps mentioned, so what can i do?

        1. that means than we don’t have some symbol

          Hello Cesar,

          I hope you are doing well,

          maybe if you can be more specific on your problem i will help you, by example , You seen another dependences missing?? You copy the libicu-* to your home??

          regards

        2. Hi
          Yes , you always get this WARNING message, with the ldd checking, because actually the version information is NOT included in the source of fedora 17 package openssl-1.0.0i
          BUT IT IS NOT an ERROR message.
          Packet tracer will start any way if there is not other lacking libraries.
          Packet tracer 7.1 require extra libraries not required by PacketTracer 7.0:
          the /usr/lib64/libicu*.52.*
          While Fedora 27 (26 and 25) are providing
          the /usr/lib64/libicu*.57.*
          So if you do nothing more, than
          # ldd /opt/pt/bin/PacketTracer7
          will show that PacketTracer7, is linked with three of these:
          /usr/lib64/libicu*.57.* libraries.

          So once /usr/lib64/libicu*.52.*, are installed
          You must execute
          # /sbin/ldconfig
          so that ldd can include theese new libs as a possible alternative to the current ones /usr/lib64/libicu*.57.*
          SO DONT TRY to start PacketTracer-7.1 until you can sea only reference to libicu*.52.*, in the command
          # ldd /opt/pt/bin/PacketTracer7
          OTHERWISE you’ll get a COREDUMP !!!!!

  2. Just tried and instructions above. There is no set_ptenv.sh or set_qtenv.sh scripts included in the packet tracker tar file. The linux tar file was for Ubuntu 14.04. As a result the /opt/pt/packettracer file is empty.

    ls -l packettracer
    -rwxr-xr-x. 1 root root 0 Jan 28 20:50 packettracer

    If I try to run /opt/pt/bin/PacketTracer7 directly I get:
    ./PacketTracer7
    ./PacketTracer7: error while loading shared libraries: libicui18n.so.52: cannot open shared object file: No such file or directory

    1. Hi again, that means than you need add the libcui* to the lib path (LD_LIBRARY_PATH environment variable) the empty /opt/pt/packettracer sounds tricky but maybe a failed installation was provoked it. For what architecture is the tar file?

      1. The tar ball was for ubuntu 14.04. That was the only one I noticed for linux. I looked in the tar ball and didn’t see any where that it has the env setup scripts.

        1. Sounds like a catch22, maybe a buggy installation. You tried uninstall and install it again??, the /opt/pt/packettracer not will be empty. Regards

  3. When I put this “sudo rpm -Uvh openssl-1.0.0i-1.fc17.src.rpm”, it show me this line “””” user mockbuild does not exist – using root “””””

    and then I cant continue with the others stepts! what can i do????

  4. Hi Admin

    I am glad that you and robertpro, are continuing to support Fedora community users, to help them using PacketTracer under Fedora, from the Package designed by CISCO engineer for Unbuntu.

    Just notice that I’m no more owner of http://www.deltaeridani.com.
    I stopped to pay for this domain after I chagend my activity in 2017.

    But I continue to adapt the PacketTracer when a new release is provided by CISCO

    Personally, I prefer to take time to package, anything that I nead as extra package, instead of just copying file.
    Because when you want to remove them, it’s allways more difficult than just using :
    # dnf remove

    On the other hand, I choosed not to install ANYTHING not providing from a “well known source”, on my secured Fedora system with SElinux.
    So because PacketTracer 7.1 require extra libs libicu*.52.*.so.* (not required by PacketTracer 7.0)

    I packaged icu-lib-compat-52.1 from icu-52.1*.src.rpm from Fedora 21,
    on the same model than done for
    openssl-lib-compat-1.0.0 from openssl-1.0.0i-1.fc17.src.rpm from Fedora 17

    ===============
    For all the rteaders, just NOTICE than openssl-1.0.0i contain many well known security holes that have been corrected from years now, in recent release of openssl. Unfortunately you have to wait that CISCO product modify the source of packetTracer, in order to use the more recent version of this library !!!

    =================
    Here is the procedure:
    all doner as root
    (for example: $ su – root,
    in a terminbal of an ordinary user session !)

    1°) download the fedora 21 archive icu-52*.src.rpm
    # cd /root

    # wget http://archives.fedoraproject.org/pub/archive/fedora/linux/releases/21/Everything/source/SRPMS/i/icu-52.1-4.fc21.src.rpm

    2°) install it
    # rpm -i icu-52.1-4.fc21.src.rpm

    3°) go under /root/rpmbuild/SPECS
    # cd /root/rpmbuild/SPECS

    and duplicate the original icu.spec in a new file: icu-lib-compat-52.1.spec
    # cp icu.spec icu-lib-compat-52.1.spec

    That we are going to modify just to build a package containing the desired libs,without any file (some share doc for example) conflicting with the current Fedora 27 libicu*.57*.rpm package !!!

    4°) now put by copy/paste the following lines (between ==== top and bottom lines excluded of course)
    in the file icu-lib-compat-52.1.spec.patch under /root/rpmbuild/SPECS/
    =================
    — icu.spec 2014-08-17 03:50:03.000000000 +0200
    +++ icu-lib-compat-52.1.spec 2018-02-11 20:36:52.000000000 +0100
    @@ -1,3 +1,7 @@
    +# disable debuginfo
    +%define debug_package %{nil}
    +
    +
    Name: icu
    Version: 52.1
    Release: 4%{?dist}
    @@ -21,11 +25,11 @@
    %description
    Tools and utilities for developing with icu.

    -%package -n lib%{name}
    +%package -n lib%{name}-compat
    Summary: International Components for Unicode – libraries
    Group: System Environment/Libraries

    -%description -n lib%{name}
    +%description -n lib%{name}-compat
    The International Components for Unicode (ICU) libraries provide
    robust and full-featured Unicode services on a wide variety of
    platforms. ICU supports the most current version of the Unicode
    @@ -36,6 +40,8 @@
    results across all the various platforms you support, without
    sacrificing performance. It offers great flexibility to extend and
    customize the supplied services.
    + TO BE USED with standard libicu of Fedora, as retrocompatibility
    + FOR PacketTracer

    %package -n lib%{name}-devel
    Summary: Development files for International Components for Unicode
    @@ -118,9 +124,9 @@
    fi
    make %{?_smp_mflags} -C source check

    -%post -n lib%{name} -p /sbin/ldconfig
    +%post -n lib%{name}-compat -p /sbin/ldconfig

    -%postun -n lib%{name} -p /sbin/ldconfig
    +%postun -n lib%{name}-compat -p /sbin/ldconfig

    %files
    %defattr(-,root,root,-)
    @@ -144,10 +150,14 @@
    %{_mandir}/man1/pkgdata.1*
    %{_mandir}/man1/uconv.1*
    %{_mandir}/man8/*.8*
    +%doc license.html readme.html

    -%files -n lib%{name}
    +%files -n lib%{name}-compat
    %defattr(-,root,root,-)
    -%doc license.html readme.html
    +# doc file mustnot be installed there
    +# in oder this lib can be installed along with the standard ones
    +# so they are moved in the main package, which will NOT be installed !
    +#%doc license.html readme.html
    %{_libdir}/*.so.*

    %files -n lib%{name}-devel
    =================

    5°)apply this pacth
    You are always under /root/rpmbuild/SPECS/

    # patch icu-lib-compat-52.1.spec icu-lib-compat-52.1.spec.patch

    6°) now rebuild the package:
    # rpmbuild -bb icu-lib-compat-52.1.spec

    this compilation and building require several minutes!

    Then when all is done properly you get on the last lines something like:

    Write : /root/rpmbuild/RPMS/x86_64/icu-52.1-4.fc27.x86_64.rpm
    Write : /root/rpmbuild/RPMS/x86_64/libicu-compat-52.1-4.fc27.x86_64.rpm
    Write : /root/rpmbuild/RPMS/x86_64/libicu-devel-52.1-4.fc27.x86_64.rpm
    Write : /root/rpmbuild/RPMS/noarch/libicu-doc-52.1-4.fc27.noarch.rpm

    Only libicu-compat-52.1-4.fc27.x86_64.rpm is interesting for PacketTracer
    (otherwise the other are not installable , because they include many file conflicting by the one , brought by icu*57.rpm package already installed)

    So save it in and easy place (in /root, or where you have downloaded packet tracer ???)
    And install it with:
    # dnf install /root/rpmbuild/RPMS/x86_64/libicu-compat-52.1-4.fc27.x86_64.rpm

    7°) in order to use them immediately do not forget to chek the environnement
    (doing step by step what packetracer script do)
    # PTDIR=/opt/PacketTracer-7.1.0
    (or what ever directory you choose to install it)
    # export LD_LIBRARY_PATH=$PTDIR/lib
    # pushd $PTDIR/bin > /dev/null
    # ldd PacketTracer7 | grep libicu
    libicui18n.so.52 => /lib64/libicui18n.so.52 (0x00007f20d7629000)
    libicuuc.so.52 => /lib64/libicuuc.so.52 (0x00007f20d72af000)
    libicudata.so.52 => /lib64/libicudata.so.52 (0x00007f20d505a000)
    (if LD_LIBRARY_PATH is not set like this, ldd will show you the reference to
    libicu*.so.57, and you will get a core dump at execution time !!)
    NOTE
    ldd normally complains also about lacking /usr/lib64/libbz2.so.1.0
    You can easily make a link
    # cd /usr/lib64
    # ln -s libbz2.so.1 libbz2.so.1.0

  5. Sorry
    the cut/paste from my text file to the html page, do not respect the format of the diff file *.patch listed above
    so wait that the admin has contacted me by email. I will send the pacth:
    icu-lib-compat-52.1.spec.patch in in the mail, and he will to put that as a link on his site , in place of the text above

  6. hi
    please help me, what the mean about this!
    # cd rpmbuild/SPECS/
    # rpmbuild -bb openssl-lib-compat-1.0.0.spec
    error: Failed build dependencies:
    perl is needed by openssl-lib-compat-1:1.0.0i-1.fc27.x86_64

  7. Hi:

    Thank you for the tutorial, I did a fresh install of Fedora 28 a week ago and tried to follow all of the steps however it didn’t work: I got stuck after I entered “sudo dnf install openssl-lib-compat” it says something like cache for _copr…… repo could not be synchronized or so.

  8. Thank you for the great guide.

    I tried it on Fedora 28 and everything works well. I had to build my own openssl RPM because your COPR repository is not yet ready for Fedora 28. But it’s not a big deal.

    But something went wrong because after some update I got a segmentation fault with PT 7.2 and 7.1 but 7.0 works well.

    1. I know about the issues in 7.2 (they now including a non compatible library version of qt5-webkit*)but i’m not aware of 7.1 problems, right know i need to update this because is becoming unusable, many thanks for your comment

    2. Hi Lumír,
      How did you do that?
      I’m on Fedora 28 (64 bit) too. I installed Packet Tracer 7.1.1 but it won’t start if I launch packettracer from CLI. If I give ./PacketTracer7 (from inside /opt/pt/bin/) it says ./PacketTracer7: error while loading shared libraries: libcrypto.so.1.0.0: cannot open shared object file: No such file or directory. I also tried installing openssl-lib-compat from Admin’s repo but it must be unavailable. Can you tell me how you “build” it yourself? Just download and install the rpm from this website: https://rpmfind.net/linux/rpm2html/search.php?query=openssl ?

        1. Hello Admin,
          I did sudo rpm -i openssl-1.1.0h-3.fc28.x86_64.rpm, the OS replied: the package openssl-1:1.1.0h-3.fc28.x86_64 is already installed. Maybe I should a clean install and start over since other Fedora 28 users have benefited from your instructions above?

  9. Still not working for me. I have 3 libicu*52 inside ~/.lib64 but none of them have execution permissions. Under /usr/lib64/ I see the following scripts and their respective soft links:

    /usr/lib64/libicui18n.so.60.2
    /usr/lib64/libicuio.so.60.2
    /usr/lib64/libicudata.so.60.2

    still, launching PT either by CLI or GUI, doesn’t do anything. I followed all the above listed steps.

    1. I copied those three libicu*52* packages into /usr/lib64 , gave them execution permissions, then did “ldconfig”. Tried launching /opt/pt/bin/PacketTracer7, got a new error: “error while loading shared libraries: libQt5Script.so.5: cannot open shared object file: No such file or directory“. Which means libcrypto.so.1.0.0 is somewhat solved! Still I don’t know how to fix this one. I do “ldd -d /opt/pt/bin/PacketTracer7” and get a long list of missing Shared Obj. among them

      libQt5Script.so.5 => not found
      libQt5ScriptTools.so.5 => not found"

      Any ideas on how to proceed?

        1. Hola Enrique, soy Beto , sabes que tu y yo somos amiguitos de la UAM AZC, sucede lo siguiente, ese no es un error de la biblioteca.

          para F28 y PT7.2 hay incopatibilidad del QT5 Webkit incluido en con el PT y QT5 en Fedora, puedes revisar si algo te falta con ldd /opt/pt/bin/PacketTracer7

          otra cosa, no he estudiado a fondo el caso de F28 + PT7.2, lo que seguro si puedes hechar a andar es PT7.1 o 7 en F28 porque no requiere el QT5 webkit incluido y no corras el /opt/pt/bin/PacketTracer7 sino el script de carga en /opt/pt.

          Saludos.

      1. Hello again,
        I’ve installed qt5-qtscript, then as super user gave ldconfig. Tried launching ./PacketTracer7 again. This time, PT seemed to finally launch but then again something went wrong and instead I got the following response:

        ./PacketTracer7: /usr/lib64/libcrypto.so.1.0.0: no version information available (required by ./PacketTracer7)
        QFSFileEngine::open: No file name specified
        QFSFileEngine::open: No file name specified
        Warning: QT_DEVICE_PIXEL_RATIO is deprecated. Instead use:
        QT_AUTO_SCREEN_SCALE_FACTOR to enable platform plugin controlled per-screen factors.
        QT_SCREEN_SCALE_FACTORS to set per-screen factors.
        QT_SCALE_FACTOR to set the application global scale factor.
        QFSFileEngine::open: No file name specified
        Segmentation fault (core dump created)

        A folder was created (~/pt) and inside 4 subfolders (extensions, logs, saves, templates) and a “uuid” binary file. The most recent log file has a 4-line long alpha-numeric incomprehensible string.

  10. I follow the build process, and I obtain the following message after the install:

    [Henry@localhost bin]$ ./PacketTracer7
    ./PacketTracer7: ./libcrypto.so.1.0.0: no version information available (required by ./PacketTracer7)

    I’m trying to install Cisco Packet Tracer 7.2 on Fedora 28

  11. Hello there,
    I gave up on PT7.1, cleaned the computer of that installation, briefly tried PT7.2 but that was even worse. Finally, got hold of a PT7.0 from http://www.packettracernetwork.com (or I think I did, not sure…). Followed their instruction, this time launching it from CLI worked out of the park! I’ve yet to do exercises and more complicated procedures with it, but at least the GUI starts and that’s a big step forward. So maybe, if anyone’s having trouble, try a previous version of PT on F28, maybe it’ll work fine…

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.