I'm trying to build 3.0.30 on Alpha/Tru64-4.0G. The configure step
works,
but make fails when it tries to link smbd:
Compiling popt/popt.c
Compiling popt/poptconfig.c
Compiling popt/popthelp.c
Compiling popt/poptparse.c
Linking bin/smbd
ld:
Unresolved:
__unsafe_string_function_usage_here_size_t__
gmake: *** [bin/smbd] Error 1
This Should Never Happen :) -- that looks like a message for the
developers.
How can I track down the cause of this and fix it?
Here are some details: I'm using the samba-3.0.30.tar.gz source
distribution
downloaded from samba.org. I configured the build as follows:
> env CC=cc LDFLAGS=-L/local/lib CPPFLAGS=-I/local/include ./
configure \
--with-winbind --with-krb5=/local --with-ldap --with-ads
(I have to use the vendor cc, because if I try to build with gcc, I get
the same errors Bengt Nilsson is reporting about tdb_open, _E__lc_ctype,
tdb_traverse, _Eioctl and many others.) Prior to running make, I fixed
what appears to be a typo in the Makefile:
> diff Makefile Makefile.orig
590c590
< LIBSMBSHAREMODES_OBJ = libsmb/smb_share_modes.o $(TDBBASE_OBJ)
---
> LIBSMBSHAREMODES_OBJ = libsmb/smb_share_modes.o $(TDB_BASE_OBJ)
Dunno if that's important. Then I ran make like so, using GNU make:
> limit datasize 1048576
> limit memoryuse 2041072
> gmake
The make process begins by reporting (long lines wrapped):
Using FLAGS = -I/usr/local/include -O -D_SAMBA_BUILD_=3
-I/src/pub/samba-3.0.30/source/popt
-I/src/pub/samba-3.0.30/source/iniparser/src -Iinclude -I./include -
I. -I.
-I./lib/replace -I./lib/talloc -I./tdb/include -I./libaddns -I./librpc
-DHAVE_CONFIG_H -I/usr/local/include -I/local/include -DLDAP_DEPRECATED
-I/src/pub/samba-3.0.30/source/lib -D_SAMBA_BUILD_=3
PICFLAG = -fPIC
LIBS = -lproplist -lsecurity -lresolv -lresolv
LDFLAGS = -L/usr/local/lib -Wl,-rpath -Wl,/usr/local/lib -L/
local/lib
DYNEXP =
LDSHFLAGS = -shared -L/usr/local/lib -Wl,-rpath -Wl,/usr/
local/lib
-L/local/lib
SHLIBEXT = so
SONAMEFLAG = -Wl,-soname,
Generating smbd/build_options.c
This dies with the "unresolved" complaint from the linker as shown
above.
My guess is this is a false-positive from safe_string.h -- i.e., there's
nothing wrong with the string function calls in the smbd source files,
but rather safe_string is mistakenly reporting a problem. Is it possible
to muzzle safe_string and just get on with the build?
I have previously built 3.0.25 successfully on this same Alpha box.
But when I was trying to build 3.0.28 after it came out, I hit the same
"unsafe_string_function_usage" error as I'm now seeing with 3.0.30. At
that time I just gave up; this time I'd like to solve the problem.
--
Kai Lanz Stanford University School of Earth Sciences
--
To unsubscribe from this list go to the following URL and read the
instructions: https://lists.samba.org/mailman/listinfo/samba