[Samba] Compiling Samba 4.8.3 on Solaris 10 produces "Undefined symbol" for tdbtorture

Gaiseric Vandal gaiseric.vandal at gmail.com
Thu Jul 5 17:52:24 UTC 2018

What compiler are you using?

If I remember correctly, gcc still uses the Solaris linker, not the gnu 
linker.    You could probably work around it by renaming ld and then 
creating a sym link to the gnu ld.          I ended up at some point 
recompiling GCC just to make sure that the gnu linker would be used.

On 07/05/18 13:30, Fabian Fritz via samba wrote:
> Hi,
> I am trying to compile the latest Samba (4.8.3) on a Solaris 10
> server. Apart from a small precompiler issue the compilation worked
> surprisingly well, up to this linker error I can't get past:
> [3237/3835] Linking default/lib/tdb/tdbtorture
> Undefined                       first referenced
>   symbol                             in file
> tdb_traverse_read                   default/lib/tdb/tools/tdbtorture_3.o
> tdb_transaction_start               default/lib/tdb/tools/tdbtorture_3.o
> tdb_transaction_cancel              default/lib/tdb/tools/tdbtorture_3.o
> tdb_transaction_commit              default/lib/tdb/tools/tdbtorture_3.o
> tdb_append                          default/lib/tdb/tools/tdbtorture_3.o
> tdb_delete                          default/lib/tdb/tools/tdbtorture_3.o
> tdb_open_ex                         default/lib/tdb/tools/tdbtorture_3.o
> tdb_check                           default/lib/tdb/tools/tdbtorture_3.o
> tdb_close                           default/lib/tdb/tools/tdbtorture_3.o
> tdb_fetch                           default/lib/tdb/tools/tdbtorture_3.o
> tdb_store                           default/lib/tdb/tools/tdbtorture_3.o
> tdb_transaction_prepare_commit      default/lib/tdb/tools/tdbtorture_3.o
> tdb_reopen_all                      default/lib/tdb/tools/tdbtorture_3.o
> tdb_runtime_check_for_robust_mutexes default/lib/tdb/tools/tdbtorture_3.o
> tdb_chainlock                       default/lib/tdb/tools/tdbtorture_3.o
> tdb_chainunlock                     default/lib/tdb/tools/tdbtorture_3.o
> tdb_traverse                        default/lib/tdb/tools/tdbtorture_3.o
> ld: fatal: symbol referencing errors. No output written to
> /tmp/samba-samba-4.8.3/bin/default/lib/tdb/tdbtorture
> Waf: Leaving directory `/tmp/samba-samba-4.8.3/bin'
> Build failed:  -> task failed (err #2):
>          {task: cc_link tdbtorture_3.o -> tdbtorture}
> I assume the necessary symbols are in libtdb, so somehow it didn't
> link automatically. Can I tell the build system explicitly to do so?
> Or is there something else I should do?
> Thanks,
> Fabian

More information about the samba mailing list