element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet & Tria Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • About Us
    About the element14 Community
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Japan
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      •  Vietnam
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Autodesk EAGLE
  • Products
  • More
Autodesk EAGLE
EAGLE User Support (English) Eagle and the libpng situation
  • Blog
  • Forum
  • Documents
  • Events
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Autodesk EAGLE to participate - click to join for free!
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • Replies 9 replies
  • Subscribers 189 subscribers
  • Views 1145 views
  • Users 0 members are here
Related

Eagle and the libpng situation

e14 Contributor
e14 Contributor over 14 years ago

I know this is an old issue and people have done work arounds, but building against libpng14 did create a lot of problems for linux users whose distros do not have libpng14 (something like 4 out of the top 5 distros, and 7 out of the top 10 don't have it). It appears now that they will never have libpng14. In fact, libpng's own website encourages the use of 12 or 15...

 

Could CadSoft either:

1) build against libpng15, if possible

2) include libpng.so.14 with the release or statically link against libpng14

 

CadSoft has said that (2) is impossible for legal reasons, but that doesn't make sense. libpng's license is:

 

" Permission is hereby granted to use, copy, modify, and distribute this

  source code, or portions hereof, for any purpose, without fee, subject

  to the following restrictions:

 

  1. The origin of this source code must not be misrepresented.

 

  2. Altered versions must be plainly marked as such and

     must not be misrepresented as being the original source.

 

  3. This Copyright notice may not be removed or altered from

     any source or altered source distribution.

 

  The Contributing Authors and Group 42, Inc. specifically permit, without

  fee, and encourage the use of this source code as a component to

  supporting the PNG file format in commercial products.  If you use this

  source code in a product, acknowledgment is not required but would be

  appreciated."

 

Which allows, with no preconditions, CadSoft to include libpng14 with their binary for eagle. It explicitly says you can use it in commerical products and doesn't even require you to acknowledge that you did (although I would encourage you to). It's an extremely generous license which in fact allows you to even statically compile the library into eagle and distribute the binary that way (with the proper attribution in your readme or license file). However, that may be a security threat and thus a liabillity.

 

If you're worried about security, then you can do (1) and rely on distributions to keep the library up to date to reduce your liabillity.

 

Thanks for your consideration, and hopefully this is something that can be easily worked out.

  • Sign in to reply
  • Cancel
  • e14 Contributor
    e14 Contributor over 13 years ago

    I just saw the changelog of version 6.2.1:

      - Linux: libpng and libjpeg directly linked into the executable to get rid of

        dependency and availability of according system libs.

     

    Thanks! That's a great move, we appreciate it.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • e14 Contributor
    e14 Contributor over 14 years ago

    On 4/11/2012 10:02 AM, S H wrote:

    I know this is an old issue and people have done work arounds, but building against libpng14 did create a lot of problems for linux users whose distros do not have libpng14 (something like 4 out of the top 5 distros, and 7 out of the top 10 don't have it). It appears now that they will never have libpng14. In fact, libpng's own website encourages the use of 12 or 15...

     

    Could CadSoft either:

    1) build against libpng15, if possible

    2) include libpng.so.14 with the release or statically link against libpng14

     

    CadSoft has said that (2) is impossible for legal reasons, but that doesn't make sense. libpng's license is:

     

    " Permission is hereby granted to use, copy, modify, and distribute this

       source code, or portions hereof, for any purpose, without fee, subject

       to the following restrictions:

     

       1. The origin of this source code must not be misrepresented.

     

       2. Altered versions must be plainly marked as such and

          must not be misrepresented as being the original source.

     

       3. This Copyright notice may not be removed or altered from

          any source or altered source distribution.

     

       The Contributing Authors and Group 42, Inc. specifically permit, without

       fee, and encourage the use of this source code as a component to

       supporting the PNG file format in commercial products.  If you use this

       source code in a product, acknowledgment is not required but would be

       appreciated."

     

    Which allows, with no preconditions, CadSoft to include libpng14 with their binary for eagle. It explicitly says you can use it in commerical products and doesn't even require you to acknowledge that you did (although I would encourage you to). It's an extremely generous license which in fact allows you to even statically compile the library into eagle and distribute the binary that way (with the proper attribution in your readme or license file). However, that may be a security threat and thus a liabillity.

     

    If you're worried about security, then you can do (1) and rely on distributions to keep the library up to date to reduce your liabillity.

     

    Thanks for your consideration, and hopefully this is something that can be easily worked out.

     

    Hi Guys,

     

    Thanks for your concerns, EAGLE keeps its libraries up to date and it

    will build to a newer libpng library once Suse adopts it which it will

    eventually. So at worse this is a temporary problem.

     

    These libraries have all been compiled, if you need them just e-mail

    support and you'll get the libraries you need. Copy them to the usr/lib

    folder and you're done.

     

    I can't speak on behalf of the developers, but I'm sure there is a good

    reason why the current situation is the way it is.

     

    hth,

    Jorge Garcia

     

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • e14 Contributor
    e14 Contributor over 14 years ago in reply to e14 Contributor

    Jim Littlefield Inscribed thus:

     

    On 4/22/2012 11:10 AM, Seeker wrote:

    >> You chose to use an operating system that has many fractured

    >> dialects.  What I find annoying is when people who made a conscious

    >> choice to do something, in this case using an operating system that

    >> is not mainstream, whine that their particular choice is less than

    >> 100% supported.  There is a reason MOST people use Windows.  It is

    >> universal, and fully supported by mainstream software designers.  I

    >> am a field engineer in a network consulting firm, so it is not

    >> because I was led down a consumer path and had no choice.  I CHOSE

    >> Windows because I know I will have full versions and full support for

    >> the software I run.  If you decide to do things differently, that is

    >> fine.  But don't expect the world to cater to you and your way of

    >> doing things.  You are not entitled to have the world your way, none

    >> of us are.  So live with your choices, or make a different choice.

    >> It is all the same to me.  But don't rant and complain that the world

    >> isn't following your path.

    >>

    >> (/soapbox)

    >>

     

    I think Troy may have selected Eagle (at least in part) because it is

    sold as a multi-platform,  Linux capable application.   If advertised

    as such I think its completely reasonable to expect that it should

    work across a range of the more common distributions ...and it

    probably does except for the libpng versioning issue previously

    described.

     

    Jim

     

    I find Seekers post a little condescending particularly since by his own

    admission Windows provides his living !

     

    People choose Open Source alternatives because they are not Windows. As

    Jim says "because it is sold as a multi-platform,  Linux capable

    application.   If advertised as such I think its completely reasonable

    to expect that it should work across a range of the more common

    distributions"

     

    --

    Best Regards:

                         Baron.

     

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • e14 Contributor
    e14 Contributor over 14 years ago in reply to e14 Contributor

    Linux is a small market and if a company chooses not to support it, that's fine - it just appears that it can be 100% compatible and a small technical hang-up exists which should be easy to fix.

     

    I'm grateful that CadSoft is willing to develop a cross-platform product, and I fully realize that Windows easily has the majority of paying users.

     

    For me, the main part of the annoyance is that it's not the kind of bug that's difficult to fix. I don't think fixing it is asking much of CadSoft.

     

    It would be nice, however, for CadSoft to at least put a note clarifying what they've tested the Linux version with.

    • For Windows, they give "Windows XP, Windows Vista, Windows 7".
    • For OS X, they give: "Mac OS X version 10.6 or above for Intel computer"

     

    It'd be nice to provide a "known good" version for Linux, at the very least.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • e14 Contributor
    e14 Contributor over 14 years ago in reply to Seeker

    Seeker wrote:

     

    You chose to use an operating system that has many fractured dialects.  What I find annoying is when people who made a conscious choice to do something, in this case using an operating system that is not mainstream, whine that their particular choice is less than 100% supported.

     

    Honestly, that is fair (although many argue that Windows is no better with shared library support). I choose Linux, and CadSoft has chosen to make Eagle not exactly 100% compatible with Linux. My institute currently uses Eagle, but can choose to teach and use gEDA and KiCad. Debian has made the choice to not use libpng14, and will remove all packages that depend on libpng12 in the near future - thus removing Eagle from both Debian and Ubuntu's distribution (which coincidentally is the OSes of the computer lab here, guess what's going to happen to classes teaching Eagle...)

     

    Linux is a small market and if a company chooses not to support it, that's fine - it just appears that it can be 100% compatible and a small technical hang-up exists which should be easy to fix.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • e14 Contributor
    e14 Contributor over 14 years ago in reply to Seeker

    On 4/22/2012 11:10 AM, Seeker wrote:

    You chose to use an operating system that has many fractured dialects.  What I find annoying is when people who made a conscious choice to do something, in this case using an operating system that is not mainstream, whine that their particular choice is less than 100% supported.  There is a reason MOST people use Windows.  It is universal, and fully supported by mainstream software designers.  I am a field engineer in a network consulting firm, so it is not because I was led down a consumer path and had no choice.  I CHOSE Windows because I know I will have full versions and full support for the software I run.  If you decide to do things differently, that is fine.  But don't expect the world to cater to you and your way of doing things.  You are not entitled to have the world your way, none of us are.  So live with your choices, or make a different choice.  It is all the same to me.  But don't rant and complain that the world isn't following your path.

     

    (/soapbox)

     

     

    I think Troy may have selected Eagle (at least in part) because it is

    sold as a multi-platform,  Linux capable application.   If advertised as

    such  I think its completely reasonable to expect that it should work

    across a range of the more common distributions ...and it probably does

    except for the libpng versioning issue previously described.

     

    Jim

     

     

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • e14 Contributor
    e14 Contributor over 14 years ago in reply to Seeker

    You chose to use an operating system that has many fractured dialects.  What I find annoying is when people who made a conscious choice to do something, in this case using an operating system that is not mainstream, whine that their particular choice is less than 100% supported.

     

    You've made an interesting rant yourself, but it's also not at all true. Anybody who's done software development in the real world knows that the so-called "fracture" you mention isn't unique to any one operating system. The exact same issue exists on Windows, and even has a name: DLL Hell. Library incompatibilities are a fact of life when developing software; the operating system has little to do with it. Sloppy build & release management results in incompatibility - whether you're using Windows, Linux, or anything else. Microsoft typically makes the same mistake at least once for each major release of Office.

     

    Issues with incompatible libraries is largely a "solved" problem for most operating systems (Windows and Linux included).

     

    Shooting yourself in the foot, on the other hand, isn't.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Seeker
    Seeker over 14 years ago in reply to e14 Contributor

    You chose to use an operating system that has many fractured dialects.  What I find annoying is when people who made a conscious choice to do something, in this case using an operating system that is not mainstream, whine that their particular choice is less than 100% supported.  There is a reason MOST people use Windows.  It is universal, and fully supported by mainstream software designers.  I am a field engineer in a network consulting firm, so it is not because I was led down a consumer path and had no choice.  I CHOSE Windows because I know I will have full versions and full support for the software I run.  If you decide to do things differently, that is fine.  But don't expect the world to cater to you and your way of doing things.  You are not entitled to have the world your way, none of us are.  So live with your choices, or make a different choice.  It is all the same to me.  But don't rant and complain that the world isn't following your path.

     

    (/soapbox)

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • e14 Contributor
    e14 Contributor over 14 years ago

    I'm dissapointed as well - I'd consider it mandatory to support the libraries in the following distributions:

    • Debian
    • Ubuntu
    • Fedora
    • Mandriva
    • openSUSE

     

    It's also really odd (to be gracious) to see that Eagle is linked to a specific version of libpng. This is a problem that has been solved long ago.

     

    I could give more than a few criticisms, since my professional career for the past seven or so years has been building software for multiple Linux distributions. I have to handle multiple versions (old & new - and the list only grows) of a dozen or so Linux distributions, across four architectures. It seems abundantly clear that whomever builds EAGLE uses SUSE variants either - openSUSE or SLE(S,D), and "Linux" means "SuSE Linux" - otherwise they'd have at least some idea what Debian/Ubuntu and Fedora are doing. Fedora 16 doesn't have libpng14, Fedora17 won't (it's easy enough to look at the beta repositories, after all). Debian (unstable) went from libpng12 -> libpng15, so it's certain they'll never support libpng14 either. Ubuntu is essentially the same story as Debian - libpng12 -> libpng15.

     

    Yet openSUSE 12.1, for some weird reason, went with libpng.so.14 (and this continues in openSUSE Factory, so libpng.so.14 seems to be SuSE's path going forward for at least a couple more releases.)

     

    Is it a big deal for me to compile libpng14? Not at all. Irritating? Absolutely!

     

    It's espescially irritating given libpng14 been mentioned (and even been recognized by the CadSoft team) some-odd four months ago, and the just-released 6.2 version is still tied to libpng14.

    CadSoft has said that (2) is impossible for legal reasons, but that doesn't make sense. libpng's license is:

    It doesn't make sense for a couple of reasons. In the States, at least, there isn't a meaningful legal difference between dynamically linking vs static linking of a library. If it's illegal to staticaly link the library, it's just as illegal to link it dynamically - both are considered "derived works." This is, of course, a moot point because (as you say) there's no licensing issue.

     

    My bet is that Linux support just isn't a priority, CadSoft is either unwilling or unable to test against anything other than SUSE. It's probably a matter of applying testing resources proportional to the number of paying users, so Linux (and likely OS X) are at the bottom rung, and SUSE is the most popular distro in Germany (where EAGLE is developed).

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2026 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube