Operating System - Linux
1828492 Members
2745 Online
109978 Solutions
New Discussion

cant run samba with the library linking problem

 
Jeong-Hwan Kim_1
Occasional Advisor

cant run samba with the library linking problem

Gurus,
Recently I installed samba (not CIFS server) with all dependancies and I faced some library linking problem.
---------------------------------------------
$ ./smbclient
/usr/lib/hpux32/dld.so: Unsatisfied code symbol '__udivsi3' in load module './smbclient'


So, I checked it up with 'ldd'
---------------------------------------------
$ ldd -r smbclient
...
symbol not found: __udivsi3 (smbclient)
symbol not found: __divsi3 (smbclient)
symbol not found: __modsi3 (smbclient)
symbol not found: __umodsi3 (smbclient)

Surely libgcc.so exists and i can find those symbols from the result of the followings.
---------------------------------------------
$ strings /usr/lib/hpux32/libgcc.so | grep ...
...
__udivsi3
__divsi3
__modsi3
__umodsi3
...

$ echo LD_LIBRARY_PATH
/usr/lib:/usr/local/lib:/usr/lib/hpux

$ echo /etc/SHLIB_PATH
/usr/lib:/etc/opt/resmon/lib:/opt/gnome/lib:/usr/lib/hpux32

would you all please let me know how i can fix it up. thanks in advance.
1 REPLY 1
Dennis Handly
Acclaimed Contributor

Re: can't run samba with the library linking problem

>libgcc.so exists and I can find those symbols from the result of the followings.
$ strings /usr/lib/hpux32/libgcc.so | grep ...

This is the wrong command. Use this instead:
$ elfdump -s -n .dynsym /usr/lib/hpux32/libgcc.so | grep ...

Your setting for LD_LIBRARY_PATH is wrong:
/usr/lib:/usr/local/lib:/usr/lib/hpux32

(Though the default should work.)

If you need 64 bit, you use hpux64. Note you can provide both if you want to use it for all types of applications.

I'm not sure why you would want to look at /etc/SHLIB_PATH, since you would have to do work in your .profile to activate it.

(Your commands above aren't the exact commands, should have been more/cat not echo. And you need a "$")

 

>$ ./smbclient
/usr/lib/hpux32/dld.so: Unsatisfied code symbol '__udivsi3' in load module './smbclient'

 

This is a known problem with a broken makefile.  This application is broken and must be relinked.