HowTo: Running Eagle CAD 6.2 on Ubuntu 12.04/12.10/13.04

Update: Eagle CAD version 6.4 is available which runs fine on Ubuntu 12.04., Ubuntu 12.10 and Ubuntu 13.04. I’ve made a small tutorial on how to fix possible dependency problems with this new version.

Ubuntu 12.04 only provides an older version of Eagle CAD, version 5.12.0 to be exact. A newer version 6.2 (32 bit) is available for download, but the installation fails due to the lack of a 32 bit libpng-1.4 library:

error while loading shared libraries: libpng14.so.14: cannot open shared object file: No such file or directory.

Luckily, I found a detailed post at raek’s blog which covers older Ubuntu versions. Great parts of the following instruction were taken from this post and adapted for Ubuntu 12.04. Thanks!

First of all you need to install some packages to build the missing png library. Open a terminal window and enter on a 32 bit Ubuntu 12.04:

sudo apt-get install build-essential perl
sudo apt-get install zlib1g zlib1g-dev

On a 64 bit Ubuntu 12.04:

sudo apt-get install build-essential perl gcc-multilib
sudo apt-get install ia32-libs lib32z1 lib32z1-dev

Then you need to fetch the libpng source code and the Eagle CAD 6.2 installer, either with “wget” (as I have done it) or directly from the respective webpages. A current version of Eagle CAD is available for download here: http://www.cadsoftusa.com/download-eagle/
libpng 1.4 can be found on this page: http://www.libpng.org/pub/png/libpng.html
I will use the “/tmp/libpng-eagle” directory for building the library:

mkdir /tmp/libpng-eagle
cd /tmp/libpng-eagle
wget ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng14/libpng-1.4.12.tar.gz
tar xvfz libpng-1.4.12.tar.gz
cd libpng-1.4.12/
./configure --prefix=/tmp/libpng-eagle/install CFLAGS=-m32
make check
make install

At this point I assume that your Eagle CAD installation will be located at “/home/$USER/eagle-6.2.0“. If not, simply adjust the location in the text below:

cd /tmp/libpng-eagle/install/lib/
mkdir -p /home/$USER/eagle-6.2.0/lib
cp -a libpng14.so* /home/$USER/eagle-6.2.0/lib/

Now the installer should run…

export LD_LIBRARY_PATH=/home/$USER/eagle-6.2.0/lib/
cd /tmp/libpng-eagle/
wget ftp://ftp.cadsoft.de/eagle/program/6.2/eagle-lin-6.2.0.run
chmod 755 eagle-lin-6.2.0.run
./eagle-lin-6.2.0.run

After the installation finishes, Eagle CAD will still not run unless you tell it where to find the png library we have just created. The easiest way to do this is by creating an executable start-up shell script (e.g. /home/$USER/eagle-6.2.0/eagle.sh) which contains the following commands:

#!/bin/sh
export LD_LIBRARY_PATH=/home/$USER/eagle-6.2.0/lib
/home/$USER/eagle-6.2.0/bin/eagle

Additionally, you could create a Unity/Gnome menu entry, for example “/home/$USER/.local/share/applications/eagle.desktop
(do not forget to adapt the $USER):

#!/usr/bin/env xdg-open

[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Icon=/home/$USER/eagle-6.2.0/bin/eagleicon50.png
Name=Eagle
Exec=/home/$USER/eagle-6.2.0/eagle.sh
Comment=Eagle CAD

Update: A friend told me that the installation procedure also works with Ubuntu 11.10.

69 thoughts on “HowTo: Running Eagle CAD 6.2 on Ubuntu 12.04/12.10/13.04

  1. In my case I needed also to make executable the eagle.sh custom script.

    It works, thanks a lot !

  2. Install and play ( InP )It works!!!
    …Kunbutu 12.04 64 bits, great tips and tricks. Many Thanks Kai!!!
    Usefull help, indeed.

  3. Me andoooooooo, gracias mil loco. anduve por varios sitios y el tuyo es el único que anduvo. gracias de nuevo

    Thanks a lots

  4. Thank you very much!

    Works with a brandnew Ubuntu 12.04 an the libpng1.4.12 instead of *.11
    The older Version of libpng is no longer available at simplesystems.org. You only need to change 11 to 12 in wget command. Et voila: installed

    • The “eagle.sh” script must be created manually. I have given an example in the post. (Do not forget to adapt it to your directory structure.)

  5. I had to install the eagle-data package for the parts-library and replaced eagle.sh with /bin/eagle.
    Dankeschön 🙂

  6. I get as far as make check and make install and I get an error saying no rules for make check or make install.

    Help?

    • This message appears if no ‘Makefile’ was generated or is present in your current directory. It’s hard to say what went wrong in your case. I would check the previous steps (especially ‘configure’) for any error messages. (And check, if you are in the correct directory when calling ‘make’.)

  7. Great instructions, worked perfectly. Instead of creating a shell script to start Eagle I opted to copy the libpng14.so.14 to the same path as the current libpng since the name doesn’t clash and Eagle is linked against “libpng14.so.14” and not “libpng.so”. In my case I copied to “/lib/i386-linux-gnu/” and ran “ldconfig”. Running Kubuntu 12.04 64-bits.

  8. Fantastic! Thanks a lot – got it installed! Like Anthony, I’m a Linux noob too and can’t work out how to start the application now that it’s installed and/or create a shortcut…

    • Well, I can not describe a general way to create a desktop icon — whether this is possible or not depends on your desktop environment (Gnome,Unity,KDE, etc.). Creating the “eagle.desktop” as described should at least allow you to access Eagle through the program starter (the menu/pop-up you use to search an run other applications).

  9. I could follow the steps till:

    cp -a libpng14.so* /home/$USER/eagle-6.2.0/lib/

    when I got this error:

    cannot stat `libpng14.so*’: No such file or directory

    • Hmm… Hard to say what exactly went wrong. At least the library is not where it should be (in the above case /tmp/libpng-eagle/install/lib/). Had one of the previous steps led to error messages? Did you try to use different paths and forgot to adapt them in one place?

  10. Great instructions, worked perfectly. Installed flawlessly on my Ubuntu 12.04 64bit.
    Yes when one comes to the section ” Unity/Gnome menu entry”, one must follow your advice, “(do not forget to adapt the $USER)” in the body of the script:
    “/home/$USER/.local/share/applications/eagle.desktop”

    Many thanks.
    Warm Ragards.

  11. Worked great though I had some problems with only being able to launch eagle from the command line which turned out to be that I had to add the Unity/Gnome menu entry for it to work. Anyway, thanks.

  12. Hey,

    thanks for this great explanation! I translated it to Dutch and posted it on my own blog… I hope you don’t mind. Just like spreading the great information to people who don’t handle English that well.

  13. i receive this error when enter ./configure –prefix=/tmp/libpng-eagle/install CFLAGS=-m32

    bash: ./configure: File o directory non esistente

    Help me please!

    • Please re-check if you are located in the ‘libpng-1.4.12’ directory when running the ‘configure’ script. If it’s not there, retry the previous steps. Maybe one of these already failed?

      Just in case: keep in mind that the content of the ‘/tmp’ directory is removed after each restart of your system.

      • ops!
        I am a stupid !!!
        I didn’t have the right of user of the /tmp directory …..
        sorry and thanks for the guide!

  14. If you have super-user access to your system, you can permanently install the libpng library by copying to the i386 system path. For my Ubuntu 12.04 system, that meant installing to /lib/i386-linux/gnu/. This would make the library accessible to all programs, and avoids needing the shell script to export the library path when invoking the program.

    Use at your own risk!

    Thanks for this great and easy to follow instruction.

    • Correct, but I do not recommend it.

      People tend to forget what libraries they have manually ‘installed’ as superuser. After some time they may be confused by cryptic package management messages or wrong library dependencies if there is a collision (meaning two packages/binaries rely on different versions of the same library).

  15. Thank you very much!
    Worked Perfectly for me on Xubuntu 12.10.
    I also linked the shell script to /usr/bin so i can just start it in the shell.
    Regards Alex

  16. realy works great…..
    Eagle Version 6.3.0
    libpng version 1.5.13
    Ubuntu 12.04
    Just have to edit commands to fit these needs ang it’s working great
    Many thanks for your help.

  17. I tried to install on debian 6.0.6 but it stops in “./eagle-lin-6.2.0.run”
    the error is “/tmp/eagle-setup.6296/eagle-6.2.0/bin/eagle: error while loading shared libraries: libssl.so.1.0.0: cannot open shared object file: No such file or directory”.
    I have no idea what does it mean ….
    On Ubuntu 12.04 it works fine!

    • Hi, I haven’t tested the installation on native Debian systems, but you might be missing a library package on your system (the mentioned libssl 1.0.0). At least on Ubuntu systems packages named “libssl1.0.0” or “libssl1.0.0:i386” (depending on your system) are available. You can also check missing library dependencies with the “ldd” command, i.e. “ldd ./eagle” in the appropriate directory. Kai.

  18. Eagle 6.3 downloaded from cadSoft installs just fine in ubuntu 12.04 64bit, so i presume they’ve fixed dependencies error.

  19. Hello i get this error on ubuntu 13.04 when i try to install libpng :

    jota@jota-laptop:/tmp/libpng-eagle/libpng-1.4.12/libpng-1.4.12$ make check
    /bin/bash ./libtool –tag=CC –mode=compile gcc -DHAVE_CONFIG_H -I. -DPNG_CONFIGURE_LIBPNG -m32 -MT libpng14_la-png.lo -MD -MP -MF .deps/libpng14_la-png.Tpo -c -o libpng14_la-png.lo `test -f ‘png.c’ || echo ‘./’`png.c
    libtool: compile: gcc -DHAVE_CONFIG_H -I. -DPNG_CONFIGURE_LIBPNG -m32 -MT libpng14_la-png.lo -MD -MP -MF .deps/libpng14_la-png.Tpo -c png.c -fPIC -DPIC -o .libs/libpng14_la-png.o
    In file included from png.h:422:0,
    from png.c:16:
    /usr/include/zlib.h:34:19: fatal error: zconf.h: No such file or directory
    compilation terminated.
    make: *** [libpng14_la-png.lo] Error 1

    any idea?

    • This seemed to let my build proceed. It’s probably no more broken than it was in the old version of Ubuntu…

      ln -s /usr/include/x86_64-linux-gnu/zconf.h /usr/include

  20. i tryed all steps by copy paste, but make check sows error missind file

    system is: ubuntu 13.0x 64 bit devoloper / eagle 6.4.0

    BUT IT WORKS ! without doing all steps, only start eaglexxxx.run

    • Yes, on newer versions of Ubuntu (i.e. also Ubuntu 13.04) installing the missing 32-bit libraries should be sufficient to install Eagle CAD without further modifications. — Kai

    • Hi Angelo. In case of the shell commands, it should not be necessary to replace $USER. It is a environment variable containing your login name. But you have to replace it in the ‘.desktop’ files. — Kai

  21. Help me!!!
    Error
    sh: 0: Can’t open ./file:///home/helios/Applycation/eagle-lin-6.5.0.run
    helios@helios-Satellite-L300:~/Applycation$ sudo sh ./eagle-lin-6.5.0.run
    /tmp/eagle-setup.4862/eagle-6.5.0/bin/eagle: error while loading shared libraries: libXrender.so.1: cannot open shared object file: No such file or directory
    helios@helios-Satellite-L300:~/Applycation$

  22. these methods worked on Ubuntu 14.04LTS. I had to use DeeibyCoper’s and Luca’s tips (but using version 1.4.13).

  23. Pingback: RGB LED Graduation Cap Shenanigans, MIT Graduation Report | orange narwhals

  24. Hi, thanx for that tipp. I’ve tried to install it on Ubuntu 14.04, and a few parts of it just works, but I managed it, and so I’d like to say, thank you. The only trouble I’ve got, I didn’t get the license-key to run, but it doesn’t matter. So long, and cheers Toni

  25. –2014-06-25 00:29:32– ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng14/libpng-1.4.12.tar.gz
    => `libpng-1.4.12.tar.gz’
    Resolving http://ftp.simplesystems.org (ftp.simplesystems.org)… 65.66.246.92
    Connecting to http://ftp.simplesystems.org (ftp.simplesystems.org)|65.66.246.92|:21… connected.
    Logging in as anonymous … Logged in!
    ==> SYST … done. ==> PWD … done.
    ==> TYPE I … done. ==> CWD (1) /pub/libpng/png/src/libpng14 … done.
    ==> SIZE libpng-1.4.12.tar.gz … done.
    ==> PASV … done. ==> RETR libpng-1.4.12.tar.gz …
    No such file `libpng-1.4.12.tar.gz’.

  26. Well, it gave directions.
    However, I have found errors in this line :
    wget ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng14/libpng-1.4.12.tar.gz
    The file was not there anymore. I have to download from other sources ( sourceforge.net ).
    Also when I compiled libpng-1.4.12.tar.gz, I always got the 64-bit version. I don’t know why.
    After I see the raek’s blog I use older version libpng-14.11.tar.gz. It can be compiled to 32-bit version.
    After that I can run the installer program eagle-lin-6.2.0.run without errors.

Leave a Reply to Kai Cancel reply

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