Re: Failed to import PyNIO from precompiled binary

From: Mary Haley <haley_at_nyahnyahspammersnyahnyah>
Date: Wed Mar 26 2014 - 15:01:53 MDT

Hi Jack,

Thanks for your patience on this. What you did seems reasonable, although it's too bad you had to go this route.

I think the issue is simply that our PyNIO and PyNGL releases are rather old, and so people with newer systems are
running into problems importing them, because the older system libraries that PyNIO and PyNGL are looking for
are no longer there.

The NCL/PyNGL/PyNIO team is working hard to get some new releases out of all these software packages that
will be linked against newer versions of everything. I think the OPeNDAP issues are also less of a problem,
because the underlying NetCDF software doesn't have some of those older weird dependencies.

--Mary

On Mar 22, 2014, at 8:37 AM, Shi-Pei Hsu <hsushipei1@gmail.com> wrote:

> Hi Mary,
>
> You're welcome!
>
> oh, I see!
>
> The version of gfortran is 4.8.2 (GNU Fortran (GCC) 4.8.2 20131212 (Red Hat 4.8.2-7))
>
> I think I need the OPeNDAP support.
>
> -
>
> P.S: I've done something that makes PyNIO and PyNGL import without error message.
>
> And I ran the color1.py(example script provided by PyNIO & PyNGL website) successfully.
>
> I tried to look for the missing libraries (like libssl.so.6, libcrypto.so.6, etc) from other linux distro
>
> Copy them to my OS and then set LD_LIBRARY_PATH to tell Fedora where are these libraries
>
> After that, I checked
>
> $ ldd nio.so
>
> again. All libraries can be found. Some part of the output is as the following
>
> linux-vdso.so.1 => (0x00007fff061fe000)
> libidn.so.11 => /lib64/libidn.so.11 (0x00007f9707186000)
> libssl.so.6 => /work/hsushipei/software/lib64/libssl.so.6 (0x00007f9706f37000)
> libcrypto.so.6 => /work/hsushipei/software/lib64/libcrypto.so.6 (0x00007f9706bdb000)
> libldap-2.3.so.0 => /work/hsushipei/software/lib64/libldap-2.3.so.0 (0x00007f970699f000)
> librt.so.1 => /lib64/librt.so.1 (0x00007f9706796000)
> libgfortran.so.1 => /work/hsushipei/software/lib64/libgfortran.so.1 (0x00007f97064c9000)
> libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00007f97061c1000)
> libm.so.6 => /lib64/libm.so.6 (0x00007f9705eb9000)
>
> Then I can import Nio and run the example without seeing error meesage.
>
> I don't know whether I do solve the problem or not. o.O
>
> Thank you very much.
>
> Sincerely Yours,
> Jack Hsu
>
> National Taiwan University
> Department of Atmospheric Science
>
>
> On Fri, Mar 21, 2014 at 5:25 AM, Mary Haley <haley@ucar.edu> wrote:
> Hi Jack,
>
> Thanks also to you for providing useful information on your SSL libraries.
>
> It does indeed look like you have a newer SSL library than what PyNIO was built with. This doesn't surprised me because we haven't release a new set of binaries for awhile now.
>
> What version of gfortran do you have? I might be able to provide you with a new PyNIO binary compiled against this.
>
> gfortran --version
>
> Also, do you need OPeNDAP support? If not, then I can probably build PyNIO without OPeNDAP support, which I believe turns off the SSL requirement.
>
> Thanks,
>
> --Mary
>
> On Mar 17, 2014, at 6:59 PM, Shi-Pei Hsu <hsushipei1@gmail.com> wrote:
>
> > Dear all,
> >
> > I downloaded pre-compiled version of PyNIO,
> >
> > "PyNIO-1.4.1.linux-redhat-x86_64-gcc412-py271-numpy160.tar.gz".
> >
> > I moved the extracted files under /usr since I can find the same directories("lib/python2.7/site-
> >
> > packages") from the tar file.
> >
> > To test the software, I got the following message
> >
> > >>> import Nio
> > Traceback (most recent call last):
> > File "<stdin>", line 1, in <module>
> > File "Nio.py", line 63, in <module>
> > from nio import *
> > ImportError: libssl.so.6: cannot open shared object file: No such file or directory
> >
> > Then, I checked the dynamically linked libraries of "nio.so", it prints the following
> >
> > linux-vdso.so.1 => (0x00007fffd5dfe000)
> > libidn.so.11 => /lib64/libidn.so.11 (0x00007fbc450c7000)
> > libssl.so.6 => not found
> > libcrypto.so.6 => not found
> > libldap-2.3.so.0 => not found
> > librt.so.1 => /lib64/librt.so.1 (0x00007fbc44ebe000)
> > libgfortran.so.1 => not found
> > libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00007fbc44bb5000)
> > libm.so.6 => /lib64/libm.so.6 (0x00007fbc448ae000)
> > libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007fbc44697000)
> > libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fbc4447a000)
> > libc.so.6 => /lib64/libc.so.6 (0x00007fbc440bb000)
> > /lib64/ld-linux-x86-64.so.2 (0x000000345dc00000)
> >
> > Then I tried to find the missing *.so files, for example,
> >
> > $ locate libssl
> >
> > One of the output is,
> >
> > /usr/lib64/libssl.so.10
> >
> > Is the "point 10" after .so means the version of libssl I have is "too new" for the current PyNIO?
> >
> > I also tried to locate other missing libs, like "libgfortran.so.1"
> >
> > nio.so needs libgfortran.so.1, but I have /usr/lib64/libgfortran.so.3 in my system. I don't whether they are the same issue or not.
> >
> > P.S. The OS I'm running is the latest stable version of Fedora, Fedora 20 with kernel 3.13.6-200.fc20.x86_64
> >
> > Thank you very much!!
> >
> > Sincerely,
> > Jack Hsu
> >
> >
> > _______________________________________________
> > pyngl-talk mailing list
> > List instructions, subscriber options, unsubscribe:
> > http://mailman.ucar.edu/mailman/listinfo/pyngl-talk
>
>

_______________________________________________
pyngl-talk mailing list
List instructions, subscriber options, unsubscribe:
http://mailman.ucar.edu/mailman/listinfo/pyngl-talk
Received on Wed Mar 26 15:02:01 2014

This archive was generated by hypermail 2.1.8 : Mon Apr 14 2014 - 11:43:53 MDT