1

I have problem with Samba on AIX. When I try to run /opt/pware64/sbin/smbd -V I get this error:

Could not load program /opt/pware64/sbin/smbd:
Dependent module /usr/lib/libiconv.a(libiconv.so.2) could not be loaded.
Member libiconv.so.2 is not found in archive

The result of ldd /opt/pware64/sbin/smbd:

/opt/pware64/sbin/smbd needs:
         /opt/pware64/lib/libldap.so
         /opt/pware64/lib/liblber.so
         /opt/pware64/lib/libgssapi_krb5.so
         /opt/pware64/lib/libkrb5.so
         /opt/pware64/lib/libk5crypto.so
         /opt/pware64/lib/libcom_err.so
         /usr/lib/libpthreads.a(shr_xpg5_64.o)
         /usr/lib/libpam.a(shr_64.o)
         /opt/pware64/lib/libiconv.a(libiconv.so.2)
         /usr/lib/librt.a(posix_aio_64.o)
         /opt/pware64/lib/libpopt.a(libpopt.so.0)
         /opt/pware64/lib/libtalloc.so
         /opt/pware64/lib/libtdb.so
         /opt/pware64/lib/libwbclient.so
         /opt/pware64/lib/libz.so
         /usr/lib/libc.a(shr_64.o)
         /usr/lib/libc.a(posix_aio_64.o)
         /usr/lib/libpthread.a(shr_xpg5_64.o)
         /opt/pware64/lib/libsasl2.a(libsasl2.so.2)
         /opt/pware64/lib/libssl.so
         /opt/pware64/lib/libcrypto.so
         /usr/lib/libs.a(shr_64.o)
         /opt/pware64/lib/libkrb5support.so
         /unix
         /usr/lib/libmls.a(shr_64.o)
         /opt/pware64/lib/libintl.a(libintl.so.8)
         /usr/lib/libcrypt.a(shr_64.o)
         /usr/lib/libdl.a(shr_64.o)
         /usr/lib/libmlsenc.a(shr_64.o)
         /usr/lib/libodm.a(shr_64.o)

The result of dump -H -X32_64 /opt/pware64/sbin/smbd:

/opt/pware64/sbin/smbd:

                        ***Loader Section***
                      Loader Header Information
VERSION#         #SYMtableENT     #RELOCent        LENidSTR
0x00000001       0x00002ba4       0x0000b4f2       0x00000156       

#IMPfilID        OFFidSTR         LENstrTBL        OFFstrTBL
0x00000012       0x000f66b8       0x00049190       0x000f680e       


                        ***Import File Strings***
INDEX  PATH                          BASE                MEMBER
    /opt/pware64/lib::/usr/lib:/lib
                                  libldap.so
                                  liblber.so
                                  libgssapi_krb5.so
                                  libkrb5.so
                                  libk5crypto.so
                                  libcom_err.so
                                  libpthreads.a       shr_xpg5_64.o
                                  libpam.a            shr_64.o
                                  libiconv.a          libiconv.so.2
                                  librt.a             posix_aio_64.o
                                  libpopt.a           libpopt.so.0
                                  libtalloc.so
                                  libtdb.so
                                  libwbclient.so
                                  libz.so
                                  libc.a              shr_64.o
                                  libc.a              posix_aio_64.o

The result of ar -X32_64 tv /opt/pware64/lib/libiconv.a:

rwxr-xr-x     0/0     1806382 Aug 11 14:53 2012 libiconv.so.2
r--r--r--     0/0     153502 Aug 11 14:53 2012 shr4_64.o

I hope for your help...

  • Please edit your post: quote the output of this command: `dump -H -X32_64 /opt/pware/sbin/smbd` – Zsigmond Lőrinczy Apr 18 '17 at 18:48
  • Could you explain, what does this command do? –  Apr 19 '17 at 07:56
  • Gives information about the executable. You can execute it as regular user. Also you can read the manual of `dump`. Or this: http://web.axelero.hu/lzsiga/aix-linking.html#Q0010 – Lorinczy Zsigmond Apr 19 '17 at 08:34
  • The result of the command was added. –  Apr 20 '17 at 13:35
  • Now try `ar -X32_64 tv /opt/pware64/lib/libiconv.a` and quote its output. If you don't have such file, you have to install component `libiconv` -- problem is these `pware64` packages seems to have died out years ago. Perhaps you should restart with perlz's packages: http://www.perzl.org/aix/index.php?n=main.samba#v3.6.x – Zsigmond Lőrinczy Apr 20 '17 at 14:59
  • Also you should state your AIX's version: output of command `oslevel -r` – Zsigmond Lőrinczy Apr 20 '17 at 15:08
  • @ZsigmondLőrinczy I attached commands output. It seems that libiconv component exists. –  May 02 '17 at 07:59
  • @aaaaaaauch Well, I think it should have found `/opt/pware64/lib/libiconv.a(libiconv.so.2)` before trying the nonexistent `/usr/lib/libiconv.a(libiconv.so.2)`. Unless you have set `LIBPATH` -- please check it. (Or if it is of 32-bit. Unlikely, but not impossible; `ar -X64 tv /opt/pware64/lib/libiconv.a` should give the same result as the previous.) – Zsigmond Lőrinczy May 02 '17 at 17:29
  • Off-topic: libiconv.a has a speciality that I've discussed here: http://web.axelero.hu/lzsiga/aix-linking.html#Q0009 – Lorinczy Zsigmond May 03 '17 at 09:42

0 Answers0