0

i am trying to install curl on solaris 10.

I have installed the curl packages with other dependencies as

application SMCcurl                          curl
application SMClgcc346                       libgcc
application SMClibidn                        libidn
application SMCliconv                        libiconv
application SMClintl                         libintl
application SMClssh2                         libssh2
application SMCossl                          openssl
application SMCzlib                          zlib

When I tried to run the curl i am getting error as

/usr/local/bin # ./curl --version
ld.so.1: curl: fatal: libidn.so.11: version `LIBIDN_1.0' not found (required by file /usr/local/lib/libcurl.so.4)
ld.so.1: curl: fatal: libidn.so.11: open failed: No such file or directory
Killed

Searched for its solution, but no luck.

Ouput of the ldd curl command is

        libcurl.so.4 =>  /usr/local/lib/libcurl.so.4
        libidn.so.11 =>  /usr/local/lib/libidn.so.11
        libintl.so.8 =>  /usr/local/lib/libintl.so.8
        libsec.so.1 =>   /usr/lib/libsec.so.1
        libc.so.1 =>     /usr/lib/libc.so.1
        libiconv.so.2 =>         /usr/local/lib/libiconv.so.2
        libnsl.so.1 =>   /usr/lib/libnsl.so.1
        libdl.so.1 =>    /usr/lib/libdl.so.1
        libssh2.so.1 =>  /usr/local/lib/libssh2.so.1
        libssl.so.1.0.0 =>       /usr/local/ssl/lib/libssl.so.1.0.0
        libcrypto.so.1.0.0 =>    /usr/local/ssl/lib/libcrypto.so.1.0.0
        libsocket.so.1 =>        /usr/lib/libsocket.so.1
        librt.so.1 =>    /usr/lib/librt.so.1
        libz.so =>       /usr/local/lib/libz.so
        libgcc_s.so.1 =>         /usr/local/lib/libgcc_s.so.1
        libidn.so.11 (LIBIDN_1.0) =>     (version not found)
        libavl.so.1 =>   /lib/libavl.so.1
        libmp.so.2 =>    /lib/libmp.so.2
        libmd.so.1 =>    /lib/libmd.so.1
        libscf.so.1 =>   /lib/libscf.so.1
        libaio.so.1 =>   /lib/libaio.so.1
        libdoor.so.1 =>  /lib/libdoor.so.1
        libuutil.so.1 =>         /lib/libuutil.so.1
        libgen.so.1 =>   /lib/libgen.so.1
        libm.so.2 =>     /lib/libm.so.2
        /platform/SUNW,Netra-440/lib/libc_psr.so.1
        /platform/SUNW,Netra-440/lib/libmd_psr.so.1

Can somebody please tell me how can resolve these dependency?

ajay_t
  • 2,347
  • 7
  • 37
  • 62
  • Have you considered how much easier this would be if you weren't still on Solaris 10. On Solaris 11 you would simply do `pkg install web/curl` and that's it! – peterh Mar 08 '14 at 10:35

5 Answers5

4

This might be because you have another package installed which provides a different version of the same library file. I came across the same issue today and found that I had a package called SUNWgnu-idn which installed libidn.so.11 in /usr/lib/.

pvs -d /usr/lib/libidn.so.11

    libidn.so.11;

Whereas the libidn.so.11 which was part of the SMClibidn package was the right version.

pvs -d /usr/local/lib/libidn.so.11

    libidn.so.11;
    LIBIDN_1.0;

Removing the conflicting package SUNWgnu-idn resolved the issue.

You could use the pkginfo tool to search for other installed packages.

pkginfo | grep idn

Vivek Thomas
  • 403
  • 4
  • 11
1

You'll need to find out from the packager what version of libidn they used that defines that version. You can see the versions provided by a library with the pvs command, such as pvs -d /usr/local/lib/libidn.so.11.

alanc
  • 4,102
  • 21
  • 24
0

I do not know if this problem was solved, but I found, trying lynx, that there are 2 libraries with almost similar names:

bash-3.2# ldd /usr/local/bin/lynx
    libidn.so.11 =>  /usr/local/lib/libidn.so.11
    libidn.so.11 (LIBIDN_1.0) =>     (version not found)
    ...

The first libidn.so.11 cames from "SMClibidn" package versión 1.11, but no idea where I can get the one that cause the issue: - "libidn.so.11 (LIBIDN_1.0) => (version not found)".

I do a try uninstalling versión 1.11 of "SMClibidn" and installing versión 1.22 and "voilà", lynx is working.

I hope this works also for you.

0

The problem is look for package SUNWgnu-idn. wget from UnixPackages is finding the libidn in /usr/lib first. So set the LD_LIBRARY_PATH to specify /usr/local/lib first when you need wget.

0

Yo have to install "libidn-1.11-sol10-sparc-local"

http://ftp.ntua.gr/mirror/sun-freeware/sparc/10/

Pab
  • 21
  • 4