How to install libdl.so.2 package on solaris 10

Dear Everyone,
Greetings!

I am trying to install libdl.so.2 packages, however, I couldn't get the exact one so could you help me to get the one mentioned before?

I thought the package seemed for the Linux OS package what is for Solaris one?

I really appreciate any help you can provide.

Regards.

@Hayder , welcome, we hope you find the forum helpful and friendly.

please give the exact Solaris 10 release version details.
That lib should be part of a standard install , have you searched for it ?

what exact issue(s) you are facing, what are you actually trying to do - the more concise details you supply the better chance the team having in giving/asking relevant information ....

what does pkginfo -i SUNWcsl return

other team members with more current/expertise on this OS may respond

If the dl stands for "dynamic linker" then it might be shipped with Solaris 11. And is impossible to install on Solaris 10 because it has dependencies with the kernel, and would conflict with all other installed programs.

@munkeHoller, Thank You, I found it so Nice and friendly.
The detailed Solaris 10 release is

                Oracle Solaris 10 8/11 s10x_u10wos_17b X86....... SunOS 5.10
                Copyright (c) 1983, 2011, Oracle and/or its affiliates. All rights reserved.
                            Assembled 23 August 2011

Yes I have searched, but I couldn't found for Solaris environment
The pkginfo - SUNWcs1 command returned...

bash-3.2$ pkginfo -i SUNWcsl
system      SUNWcsl Core Solaris, (Shared Libs)

This one is the error message

java.lang.UnsatisfiedLinkError: /home/IDMuser/IDMBinaries/RL/allIDMJars/libsapjco3.so: ld.so.1: java: fatal: libdl.so.2: open failed: No such file or directory
        at java.lang.ClassLoader$NativeLibrary.load(Native Method)
        at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1941)
        at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1824)
        at java.lang.Runtime.load0(Runtime.java:809)
        at java.lang.System.load(System.java:1086)
        at com.sap.conn.jco.rt.DefaultJCoRuntime.loadJCoLibrary(DefaultJCoRuntime.java:693)
        at com.sap.conn.jco.rt.DefaultJCoRuntime.registerNativeMethods(DefaultJCoRuntime.java:468)
        at com.sap.conn.jco.rt.JCoRuntime.registerNatives(JCoRuntime.java:1596)
        at com.sap.conn.rfc.driver.CpicDriver.<clinit>(CpicDriver.java:61)
        at com.sap.conn.rfc.engine.DefaultRfcRuntime.getVersion(DefaultRfcRuntime.java:36)
        at com.sap.conn.rfc.api.RfcApi.RfcGetVersion(RfcApi.java:239)
        at com.sap.conn.jco.rt.MiddlewareJavaRfc.<clinit>(MiddlewareJavaRfc.java:213)
        at com.sap.conn.jco.rt.DefaultJCoRuntime.initialize(DefaultJCoRuntime.java:99)
        at com.sap.conn.jco.rt.JCoRuntimeFactory.<clinit>(JCoRuntimeFactory.java:23)
        at com.sap.conn.jco.rt.RuntimeEnvironment.<init>(RuntimeEnvironment.java:43)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
        at java.lang.Class.newInstance(Class.java:442)
        at com.sap.conn.jco.ext.Environment.getInstance(Environment.java:155)
        at com.sap.conn.jco.ext.Environment.registerDestinationDataProvider(Environment.java:260)
        at com.novell.nds.dirxml.driver.SAP.environment.JCoEnvironment.registerJCOProviders(JCoEnvironment.java:34)
        at com.novell.nds.dirxml.driver.SAPHRShim.SAPDriverShim.init(Unknown Source)
        at com.novell.nds.dirxml.remote.loader.Driver.startDriver(Driver.java:371)
        at com.novell.nds.dirxml.remote.loader.Driver.driverStart(Driver.java:93)
        at com.novell.nds.dirxml.remote.loader.RemoteLoader.run(RemoteLoader.java:1275)
        at java.lang.Thread.run(Thread.java:748)

Thank you!

@Hayder,

check these links out, look for java specifics - they may be of help

The following suggests a 64bit vs 32bit problem:

Check the jar file:
file /home/IDMuser/IDMBinaries/RL/allIDMJars/libsapjco3.so
ldd /home/IDMuser/IDMBinaries/RL/allIDMJars/libsapjco3.so
And also check the used java binary. (The invoked java might be a wrapper that branches to the real java binary.)

1 Like

Dear @MadeInGermany, I am trying to check the jar file the result is as attached (image)

Thank you

Hello,

It seems like either your system does not have the GNU C library and GCC support libraries installed, or they are installed in a location that's not in your library path. This software it seems needs these GNU libraries to be available in order to run. If these are not installed on your system, I believe they were included with Solaris 10 as the packages SUNWgcc (the full compiler, if you require that for any reason) and SUNWgccruntime (the GNU C libraries and their support libraries), so you should still be able to install them on your system from the original installation media.

1 Like

we are looking for contents of the packages to see which contains libld.so.2

what does pkgchk -l SUNWcsl give ?
(NO SCREENSHOTS, use copy/paste)

**NB:**you may need to sudo commands

  • have you done a search for the file ?
    sudo find / -name 'libld.so*'

Hello dear @munkeHoller,

The command(pkgchk -l SUNWcsl) return has many lines, is it possible to attach more than 6000 lines?

here is the return of Find / -name 'libdl.so*'

bash-3.2# find / -name 'libdl.so*'
/usr/lib/amd64/libdl.so
/usr/lib/amd64/libdl.so.1
/usr/lib/libdl.so
/usr/lib/libdl.so.1
/etc/lib/libdl.so.1
/lib/amd64/libdl.so
/lib/amd64/libdl.so.1
/lib/libdl.so
/lib/libdl.so.1
bash-3.2#

no need for all, just look in the listing for libdl.so*

wrt @drysdalk 's post, do you have gnu compiler installed -(have you tried it? with a 'hello world' level program)

... could have taken ages.
Smarter is
pkgchk -l SUNWcsl | grep -w "libdl.so"

Hello Dear @drysdalk,
Greetings!

Yes, they are installed. I have tried to check whether they are installed or not by using the below command.

bash-3.2$ pkginfo -i SUNWcsl
system SUNWcsl Core Solaris, (Shared Libs)
bash-3.2$ pkginfo -i SUNWgcc
system SUNWgcc gcc - The GNU C compiler
bash-3.2$ pkginfo -i SUNWgccruntime
system SUNWgccruntime GCC Runtime libraries
bash-3.2$

Your java file is 64bit, so check if the libraries are 64bit, too:
pkginfo -l SUNWgcc | grep "/lib" | xargs file

But I see that it wants
/lib/amd64/libdl.so.2 or
/usr/lib/amd64/libdl.so.2
that is not present on your system. Perhaps on a higher Solaris version?
Apparently no, according to Runtime Linking Programming Interface - Oracle Solaris 11.1 Linkers and Libraries Guide
Did you install the java lib for Solaris? Or is it built for Linux?

ages ?as in months/weeks/days/hours/minutes
smarter still, do both

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.