[Samba] Failed building 3.0.30 for tru64 4.0F
Bengt Nilsson
bengt.nilsson at mc2.chalmers.se
Sun Jun 1 13:20:00 GMT 2008
I removed the following prototypes from source/include/proto.h:
//int32 tdb_fetch_int32(TDB_CONTEXT *tdb, const char *keystr);
//int tdb_store_int32(TDB_CONTEXT *tdb, const char *keystr, int32 v);
//BOOL tdb_fetch_uint32(TDB_CONTEXT *tdb, const char *keystr, uint32
*value);
//BOOL tdb_store_uint32(TDB_CONTEXT *tdb, const char *keystr, uint32
value);
//int32 tdb_change_int32_atomic(TDB_CONTEXT *tdb, const char *keystr,
int32 *oldval, int32 change_val);
and now it compiled further, but then I got
Compiling lib/util_tdb.c
lib/util_tdb.c:188: error: conflicting types for 'tdb_fetch_int32'
include/util_tdb.h:54: error: previous declaration of
'tdb_fetch_int32' was here
lib/util_tdb.c:188: error: conflicting types for 'tdb_fetch_int32'
include/util_tdb.h:54: error: previous declaration of
'tdb_fetch_int32' was here
lib/util_tdb.c:216: error: conflicting types for 'tdb_store_int32'
include/util_tdb.h:56: error: previous declaration of
'tdb_store_int32' was here
lib/util_tdb.c:216: error: conflicting types for 'tdb_store_int32'
include/util_tdb.h:56: error: previous declaration of
'tdb_store_int32' was here
lib/util_tdb.c:247: error: conflicting types for 'tdb_fetch_uint32'
include/util_tdb.h:57: error: previous declaration of
'tdb_fetch_uint32' was here
lib/util_tdb.c:247: error: conflicting types for 'tdb_fetch_uint32'
include/util_tdb.h:57: error: previous declaration of
'tdb_fetch_uint32' was here
lib/util_tdb.c:279: error: conflicting types for 'tdb_store_uint32'
include/util_tdb.h:55: error: previous declaration of
'tdb_store_uint32' was here
lib/util_tdb.c:279: error: conflicting types for 'tdb_store_uint32'
include/util_tdb.h:55: error: previous declaration of
'tdb_store_uint32' was here
lib/util_tdb.c:322: error: conflicting types for
'tdb_change_int32_atomic'
include/util_tdb.h:46: error: previous declaration of
'tdb_change_int32_atomic' was here
lib/util_tdb.c:322: error: conflicting types for
'tdb_change_int32_atomic'
include/util_tdb.h:46: error: previous declaration of
'tdb_change_int32_atomic' was here
Looking at the conflicts, it seems like int32_t is used in the header
prototypes, but int32 is used in the source files.
Why?
If I change to int32_t in the corresponding source files, it all
compiles but it does not link:
Linking bin/smbd
tdb_open
_E__lc_ctype
tdb_traverse
_Eioctl
tdb_delete
tdb_error
tdb_errorstr
tdb_store
tdb_fetch
_Eopen
tdb_map_size
tdb_close
tdb_open_ex
_Esendto
tdb_set_max_dead
tdb_chainunlock
tdb_chainlock
tdb_parse_record
_Efcntl
tdb_firstkey
tdb_nextkey
_Esetlocale
_Esend
_Erecv
_Egetsockopt
_Esetsockopt
_Ebind
_Econnect
_Estatvfs
tdb_append
tdb_lockall
tdb_unlockall
_Emunmap
_Emmap
_Emsync
tdb_setalarm_sigptr
tdb_chainlock_read
tdb_name
tdb_chainunlock_read
_Efnmatch
tdb_transaction_start
tdb_transaction_cancel
tdb_transaction_commit
tdb_hash_size
tdb_fd
tdb_exists
tdb_get_seqnum
tdb_reopen_all
collect2: ld returned 1 exit status
make: *** [bin/smbd] Error 1
So I am stuck again.
BN
1 jun 2008 kl. 14.51 skrev Bengt Nilsson:
> Dear friends,
>
> I failed to buld samba 3.0.30 for tru64unix 4.0F.
>
> I am curently locked to this os version due to other production
> software.
> We currently run Samba 2.2.8a but we were requested to upgrade by
> our network group.
>
> I downloaded 3.3.30 and did
>
> $ cd source
> $ ./configure
>
> no warnings or errors as far as I could see, except
>
> checking for replacing readdir using getdirentries()... failure:
> readdir [
> Failed for unlink - 1 = Not owner
> ]
> failure: readdir [
> Failed for unlink - 1 = Not owner
> ]
>
> (what does this mean?)
>
>
> $ make
>
> Using FLAGS = -O -D_SAMBA_BUILD_=3 -I/usr/users/eb0/bnilsson/
> diskeb2/sysproj/2008/samba-3.0.30/source/popt -I/usr/users/eb0/
> bnilsson/diskeb2/sysproj/2008/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/users/eb0/
> bnilsson/diskeb2/sysproj/2008/samba-3.0.30/source/lib -
> D_SAMBA_BUILD_=3
> PICFLAG = -fPIC
> LIBS = -lproplist -lsecurity -lresolv -lresolv
> LDFLAGS = -pie
> DYNEXP =
> LDSHFLAGS = -shared
> SHLIBEXT = so
> SONAMEFLAG = -Wl,-soname,
> Generating smbd/build_options.c
> Building include/proto.h
> creating /usr/users/eb0/bnilsson/diskeb2/sysproj/2008/samba-3.0.30/
> source/include/proto.h
> Building include/build_env.h
> creating /usr/users/eb0/bnilsson/diskeb2/sysproj/2008/samba-3.0.30/
> source/nsswitch/winbindd_proto.h
> creating /usr/users/eb0/bnilsson/diskeb2/sysproj/2008/samba-3.0.30/
> source/web/swat_proto.h
> creating /usr/users/eb0/bnilsson/diskeb2/sysproj/2008/samba-3.0.30/
> source/client/client_proto.h
> creating /usr/users/eb0/bnilsson/diskeb2/sysproj/2008/samba-3.0.30/
> source/utils/net_proto.h
> creating /usr/users/eb0/bnilsson/diskeb2/sysproj/2008/samba-3.0.30/
> source/utils/ntlm_auth_proto.h
> Compiling dynconfig.c
> In file included from include/includes.h:789,
> from /usr/users/eb0/bnilsson/diskeb2/sysproj/2008/
> samba-3.0.30/source/dynconfig.c:21:
> include/proto.h:1440: error: conflicting types for 'tdb_fetch_int32'
> include/util_tdb.h:54: error: previous declaration of
> 'tdb_fetch_int32' was here
> include/proto.h:1440: error: conflicting types for 'tdb_fetch_int32'
> include/util_tdb.h:54: error: previous declaration of
> 'tdb_fetch_int32' was here
> include/proto.h:1442: error: conflicting types for 'tdb_store_int32'
> include/util_tdb.h:56: error: previous declaration of
> 'tdb_store_int32' was here
> include/proto.h:1442: error: conflicting types for 'tdb_store_int32'
> include/util_tdb.h:56: error: previous declaration of
> 'tdb_store_int32' was here
> include/proto.h:1444: error: conflicting types for 'tdb_fetch_uint32'
> include/util_tdb.h:57: error: previous declaration of
> 'tdb_fetch_uint32' was here
> include/proto.h:1444: error: conflicting types for 'tdb_fetch_uint32'
> include/util_tdb.h:57: error: previous declaration of
> 'tdb_fetch_uint32' was here
> include/proto.h:1446: error: conflicting types for 'tdb_store_uint32'
> include/util_tdb.h:55: error: previous declaration of
> 'tdb_store_uint32' was here
> include/proto.h:1446: error: conflicting types for 'tdb_store_uint32'
> include/util_tdb.h:55: error: previous declaration of
> 'tdb_store_uint32' was here
> include/proto.h:1450: error: conflicting types for
> 'tdb_change_int32_atomic'
> include/util_tdb.h:46: error: previous declaration of
> 'tdb_change_int32_atomic' was here
> include/proto.h:1450: error: conflicting types for
> 'tdb_change_int32_atomic'
> include/util_tdb.h:46: error: previous declaration of
> 'tdb_change_int32_atomic' was here
> The following command failed:
> gcc -O -D_SAMBA_BUILD_=3 -I/usr/users/eb0/bnilsson/diskeb2/sysproj/
> 2008/samba-3.0.30/source/popt -I/usr/users/eb0/bnilsson/diskeb2/
> sysproj/2008/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/users/eb0/bnilsson/
> diskeb2/sysproj/2008/samba-3.0.30/source/lib -D_SAMBA_BUILD_=3 -
> DCONFIGFILE="/usr/local/samba/lib/smb.conf" -DSBINDIR="/usr/local/
> samba/sbin" -DBINDIR="/usr/local/samba/bin" -DLMHOSTSFILE="/usr/
> local/samba/lib/lmhosts" -DSWATDIR="/usr/local/samba/swat" -
> DLOCKDIR="/usr/local/samba/var/locks" -DPIDDIR="/usr/local/samba/var/
> locks" -DLIBDIR="/usr/local/samba/lib" -DLOGFILEBASE="/usr/local/
> samba/var" -DSHLIBEXT="so" -DCONFIGDIR="/usr/local/samba/lib" -
> DSMB_PASSWD_FILE="/usr/local/samba/private/smbpasswd" -
> DPRIVATE_DIR="/usr/local/samba/private" -fPIC -c /usr/users/eb0/
> bnilsson/diskeb2/sysproj/2008/samba-3.0.30/source/dynconfig.c -o
> dynconfig.o
> make: *** [dynconfig.o] Error 1
>
> So I am stuck for the moment.
> What can be done?
>
> BN
>
>
>
> --
> To unsubscribe from this list go to the following URL and read the
> instructions: https://lists.samba.org/mailman/listinfo/samba
More information about the samba
mailing list