[Thread Prev][Thread Next][Index]

Re: [ferret_users] library problem pyferret install



Unfortunately the creators of the libpng library do some weird naming for their libraries.  I will investigate if I can do something to work around this problem. but I doubt it will be this week.

The pyferret build just links against the (generic) libpng library (e.g., "-lpng").  I wish the library needed was just recorded as a libpng.so.* library, but instead it gets recorded as needing libpng12.so.0 for the RHEL6 build and libpng15.so.15 for the RHEL7 build.  (Usually differences in the last number in the name do not cause problems.  But here the main name is changing.)  Thus one if forced to use the specific version of libpng.

Best,
Karl


On Wed, Jul 19, 2017 at 7:39 AM, Martin Schmidt <martin.schmidt@io-warnemuende.de> wrote:
Hi Marco,

I had the same problem. The different Linux flavours tend to advance different libraries with different speed. Ubuntu is different from suse or redhat. This limits portability, as you see, but the interests of people are widespread. Some need stable tools and do not care, how results are produced. Others need the latest twist of a library and advance software development rapidly.

You may try to generate a fake png15-library just linking libpng16 to the name of libpng15. This MAY work or may not. Be careful not to destroy your system: Link or better copy the library to some directory outside of the system and set the LD_LIBRARY_PATH to this directory. If it does not work, the link can be simply deleted.

For suse linux this method did not work. My way out is to compile pyferret by myself from source. Karl's cookbook how to do this is excellent. But most probably it is not required to build all the libraries from Cairo to netcdf by yourself. Most of them will be in the ubuntu-distribution  When installing, please be aware, you have to install not only the libraries but also the development packages.

Hope this helps. Best,

Martin



On 07/19/2017 03:36 PM, Marco van Hulten wrote:
Hello,

In installed PyFerret, following
http://ferret.pmel.noaa.gov/Ferret/documentation/pyferret/build-install
I get an error concerning libpng:


$ pyferret -version
Traceback (most recent call last):
   File "<string>", line 1, in <module>
   File "/home/mhu027/installed/pyferret/lib/python2.7/site-packages/pyferret/__init__.py", line 44, in <module>
     from pyferret import libpyferret
ImportError: libpng15.so.15: cannot open shared object file: No such file or directory


I am using Ubuntu 16.04, which only provides libpng12 and libpng16.

Maybe PyFerret could be more lenient and check for libpng>=15 (or
whatever is minimally needed)?

- Marco





--
Karl M. Smith, Ph.D.
JISAO Univ. Wash. and PMEL NOAA
"The contents of this message are mine personally and do
not necessarily reflect any position of the Government
or the National Oceanic and Atmospheric Administration."

[Thread Prev][Thread Next][Index]
Contact Us
Dept of Commerce / NOAA / OAR / PMEL / Ferret

Privacy Policy | Disclaimer | Accessibility Statement