Samba with AD support not compile

Tom Judge tom at tomjudge.com
Wed Oct 10 10:07:41 PDT 2007


Subscriber wrote:
> Hi
> 
> I just tried to install net/samba3 (samba-3.0.26a_1,1) on new server and
> have an error. Error occurs only when I enable "ADS" option in port
> config dialog. Then I try to compile port with gcc-4.2.2 instead of
> default system compiler and has the same result.
> 
> Does anybody know, how to solve this problem?
> 
> 

Hi,

When we compile samba with AD support we always use the security/krb5 
port to provide the kerberos library.

This is the build process that we use:

cd /usr/ports/security/krb5
make install
cd /usr/ports/net/samba3
make KRB5_HOME=/usr/local
make install


You should do a make clean in net/samba3 before trying this.

I'm not sure why but after significant testing with all 3 kerberos 
implementations (base, security/krb5, security/heidemal) we came to the 
conclusion that the krb5 port provided the most stable integration with 
windows 2000 AD Controllers.

Tom

> 
> --------
> uname -a
> --------
> 
> FreeBSD server0.xxx.xxxxx.xx 6.2-RELEASE-p8 FreeBSD 6.2-RELEASE-p8 #0:
> Tue Oct  9 15:13:49 MSD 2007
> xxxxx at server0.xxx.xxxxx.xx:/usr/obj/usr/src/sys/SERVER0  i386
> 
> 
> 
> ---------------
> installed ports
> ---------------
> 
> apache-2.2.6_2      Version 2.2 of Apache web server with prefork MPM.
> autoconf-2.61_2     Automatically configure source code on many Un*x
> platforms
> autoconf-wrapper-20070404 Wrapper script for GNU autoconf
> bison-1.75_2,1      A parser generator from FSF, (mostly) compatible
> with Yacc
> cpuid-3.3_3         CPU identification utility
> cups-base-1.3.3     Common UNIX Printing System
> cvsup-without-gui-16.1h_3 General network file distribution system
> optimized for CVS
> cyrus-sasl-2.1.22   RFC 2222 SASL (Simple Authentication and Security Layer)
> cyrus-sasl-saslauthd-2.1.22 SASL authentication server for cyrus-sasl2
> db41-4.1.25_4       The Berkeley DB package, revision 4.1
> db44-4.4.20.4       The Berkeley DB package, revision 4.4
> e2fsprogs-libuuid-1.40.2 UUID library from e2fsprogs package
> expat-2.0.0_1       XML 1.0 parser written in C
> gamin-0.1.9         A file and directory monitoring system
> gettext-0.16.1_3    GNU gettext package
> glib-2.12.13        Some useful routines of C programming (current
> stable versi
> gmake-3.81_2        GNU version of 'make' utility
> gnutls-1.6.3        GNU Transport Layer Security library
> heimdal-1.0.1       A popular BSD-licensed implementation of Kerberos 5
> help2man-1.36.4_1   Automatically generating simple manual pages from
> program o
> jpeg-6b_4           IJG's jpeg compression utilities
> libexecinfo-1.1_1   A library for inspecting program's backtrace
> libgcrypt-1.2.4_1   General purpose crypto library based on code used in
> GnuPG
> libgmp-4.2.2        A free library for arbitrary precision arithmetic
> libgpg-error-1.5    Common error values for all GnuPG components
> libiconv-1.9.2_2    A character set conversion library
> libiodbc-3.52.5     An ODBC 3.x driver manager, for universal data
> source acces
> libltdl-1.5.24      System independent dlopen wrapper
> libtool-1.5.24      Generic shared library support script
> libxml2-2.6.30      XML parser library for GNOME
> m4-1.4.9,1          GNU m4
> mpfr-2.3.0          A library for multiple-precision floating-point
> computation
> openldap-sasl-client-2.3.38 Open source LDAP client implementation with
> SASL2 support
> openldap-server-2.3.38 Open source LDAP server implementation
> openssl-stable-0.9.7m SSL and crypto library
> p5-gettext-1.05_1   Message handling functions
> p7zip-4.55          File archiver with high compression ratio
> pcre-7.3            Perl Compatible Regular Expressions library
> perl-5.8.8          Practical Extraction and Report Language
> php5-5.2.4_1        PHP Scripting Language
> pkg-config-0.22     A utility to retrieve information about installed
> libraries
> png-1.2.18          Library for manipulating PNG images
> popt-1.7_4          A getopt(3) like library with a number of
> enhancements, fro
> portupgrade-2.3.1,2 FreeBSD ports/packages administration and management
> tool s
> postgresql-client-8.2.5 PostgreSQL database (client)
> postgresql-server-8.2.5_1 The most advanced open-source database
> available anywhere
> ruby-1.8.6_2,1      An object-oriented interpreted scripting language
> ruby18-bdb-0.6.2    Ruby interface to Sleepycat's Berkeley DB revision 2
> or lat
> samba-3.0.26a_1,1   A free SMB and CIFS client and server for UNIX
> screen-4.0.3        A multi-screen window manager
> sendmail+tls+sasl2+ldap-8.14.1 Reliable, highly configurable mail
> transfer agent with util
> tiff-3.8.2_1        Tools and library routines for working with TIFF images
> unzip-5.52_3        List, test and extract compressed files in a ZIP archive
> zip-2.32            Create/update ZIP files compatible with pkzip
> 
> 
> 
> -------------------------
> make configure | grep krb
> -------------------------
> 
> configure: WARNING: netinet/ip.h: present but cannot be compiled
> configure: WARNING: netinet/ip.h:     check for missing prerequisite
> headers?
> configure: WARNING: netinet/ip.h: see the Autoconf documentation
> configure: WARNING: netinet/ip.h:     section "Present But Cannot Be
> Compiled"
> configure: WARNING: netinet/ip.h: proceeding with the preprocessor's result
> configure: WARNING: netinet/ip.h: in the future, the compiler will take
> precedence
> configure: WARNING: sys/mount.h: present but cannot be compiled
> configure: WARNING: sys/mount.h:     check for missing prerequisite headers?
> configure: WARNING: sys/mount.h: see the Autoconf documentation
> configure: WARNING: sys/mount.h:     section "Present But Cannot Be
> Compiled"
> configure: WARNING: sys/mount.h: proceeding with the preprocessor's result
> configure: WARNING: sys/mount.h: in the future, the compiler will take
> precedence
> configure: WARNING: execinfo.h: accepted by the compiler, rejected by
> the preprocessor!
> configure: WARNING: execinfo.h: proceeding with the compiler's result
> checking for Active Directory and krb5 support... yes
> checking for krb5-config... /usr/bin/krb5-config
> checking for working krb5-config... yes
> checking krb5.h usability... yes
> checking krb5.h presence... yes
> checking for krb5.h... yes
> checking krb5/locate_plugin.h usability... yes
> checking krb5/locate_plugin.h presence... yes
> checking for krb5/locate_plugin.h... yes
> checking for krb5_encrypt_data in -lk5crypto... no
> checking for krb5_mk_req_extended in -lkrb5... yes
> checking for krb5_kt_compare in -lkrb5... yes
> checking for krb5_set_real_time... no
> checking for krb5_set_default_in_tkt_etypes... yes
> checking for krb5_set_default_tgs_enctypes... no
> checking for krb5_set_default_tgs_ktypes... no
> checking for krb5_principal2salt... no
> checking for krb5_use_enctype... no
> checking for krb5_string_to_key... yes
> checking for krb5_get_pw_salt... yes
> checking for krb5_string_to_key_salt... yes
> checking for krb5_auth_con_setkey... yes
> checking for krb5_auth_con_setuseruserkey... no
> checking for krb5_locate_kdc... no
> checking for krb5_get_permitted_enctypes... no
> checking for krb5_get_default_in_tkt_etypes... yes
> checking for krb5_free_data_contents... yes
> checking for krb5_principal_get_comp_string... yes
> checking for krb5_free_unparsed_name... no
> checking for krb5_free_keytab_entry_contents... no
> checking for krb5_kt_free_entry... yes
> checking for krb5_krbhst_init... yes
> checking for krb5_krbhst_get_addrinfo... yes
> checking for krb5_c_enctype_compare... no
> checking for krb5_enctypes_compatible_keys... yes
> checking for krb5_crypto_init... yes
> checking for krb5_crypto_destroy... yes
> checking for krb5_decode_ap_req... yes
> checking for krb5_verify_checksum... yes
> checking for krb5_c_verify_checksum... no
> checking for krb5_principal_compare_any_realm... yes
> checking for krb5_parse_name_norealm... no
> checking for krb5_princ_size... no
> checking for krb5_get_init_creds_opt_set_pac_request... no
> checking for krb5_get_renewed_creds... no
> checking for krb5_get_kdc_cred... yes
> checking for krb5_free_error_contents... yes
> checking for initialize_krb5_error_table... yes
> checking for krb5_get_init_creds_opt_alloc... no
> checking for krb5_get_init_creds_opt_free... no
> checking whether krb5_ticket contains kvno and enctype... no
> checking whether krb5_get_init_creds_opt_free takes a context
> argument... yes
> checking whether krb5_verify_checksum takes 7 arguments... 6
> checking for checksum in krb5_checksum... yes
> checking for ticket pointer in krb5_ap_req... no
> checking for e_data pointer in krb5_error... yes
> checking for krb5_crypto type... yes
> checking for krb5_encrypt_block type... no
> checking for addrtype in krb5_address... no
> checking for addr_type in krb5_address... yes
> checking for enc_part2 in krb5_ticket... no
> checking for keyblock in krb5_creds... no
> checking for session in krb5_creds... yes
> checking for keyvalue in krb5_keyblock... yes
> checking for the krb5_princ_component macro... no
> checking for key in krb5_keytab_entry... no
> checking for keyblock in krb5_keytab_entry... yes
> checking for magic in krb5_address... no
> checking for krb5_princ_realm returns krb5_realm or krb5_data... yes
> checking for krb5_addresses type... yes
> checking whether krb5_mk_error takes 3 arguments MIT or 9 Heimdal... no
> checking whether Active Directory and krb5 support is used... yes
>     KRB5_LIBS = -lgssapi -lkrb5 -lasn1 -lcrypto -lroken -lcrypt -lcom_err
> 
> 
> 
> ----
> make
> ----
> 
> ===>  Building for samba-3.0.26a_1,1
> cd /usr/ports/net/samba3/work/samba-3.0.26a/source && make pch
> Generating smbd/build_options.c
> Building include/proto.h
> creating /usr/ports/net/samba3/work/samba-3.0.26a/source/include/proto.h
> Building include/build_env.h
> creating
> /usr/ports/net/samba3/work/samba-3.0.26a/source/nsswitch/winbindd_proto.h
> creating /usr/ports/net/samba3/work/samba-3.0.26a/source/web/swat_proto.h
> creating
> /usr/ports/net/samba3/work/samba-3.0.26a/source/client/client_proto.h
> creating /usr/ports/net/samba3/work/samba-3.0.26a/source/utils/net_proto.h
> creating
> /usr/ports/net/samba3/work/samba-3.0.26a/source/utils/ntlm_auth_proto.h
> rm -f /usr/ports/net/samba3/work/samba-3.0.26a/source/include/includes.h.gch
> cc -I. -I/usr/ports/net/samba3/work/samba-3.0.26a/source  -O2 -pipe
> -march=prescott -D_SAMBA_BUILD_=3 -I/usr/local/include
> -I/usr/ports/net/samba3/work/samba-3.0.26a/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 -DLDAP_DEPRECATED
> -I/usr/ports/net/samba3/work/samba-3.0.26a/source/lib -D_SAMBA_BUILD_=3
> -fPIC -DPIC -c
> /usr/ports/net/samba3/work/samba-3.0.26a/source/include/includes.h -o
> /usr/ports/net/samba3/work/samba-3.0.26a/source/include/includes.h.gch
> Using FLAGS      =  -O2 -pipe -march=prescott -D_SAMBA_BUILD_=3
> -I/usr/local/include
> -I/usr/ports/net/samba3/work/samba-3.0.26a/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 -DLDAP_DEPRECATED
> -I/usr/ports/net/samba3/work/samba-3.0.26a/source/lib -D_SAMBA_BUILD_=3
>       PICFLAG    = -fPIC -DPIC
>       LIBS       = -lcrypt -lexecinfo -liconv
>       LDFLAGS    = -pie -Wl,-R/usr/local/lib -L/usr/local/lib
> -L/usr/local/lib
>       DYNEXP     = -Wl,--export-dynamic
>       LDSHFLAGS  = -shared -Wl,-R/usr/local/lib -L/usr/local/lib
> -L/usr/local/lib
>       SHLIBEXT   = so
>       SONAMEFLAG = -Wl,-soname,
> Compiling dynconfig.c
> Compiling param/loadparm.c
> Compiling param/params.c
> Compiling lib/sharesec.c
> Compiling smbd/files.c
> Compiling smbd/chgpasswd.c
> Compiling smbd/connection.c
> Compiling smbd/utmp.c
> Compiling smbd/session.c
> Compiling smbd/map_username.c
> Compiling smbd/dfree.c
> Compiling smbd/dir.c
> Compiling smbd/password.c
> Compiling smbd/conn.c
> Compiling smbd/share_access.c
> Compiling smbd/fileio.c
> Compiling smbd/ipc.c
> Compiling smbd/lanman.c
> Compiling smbd/negprot.c
> Compiling smbd/message.c
> Compiling smbd/nttrans.c
> Compiling smbd/pipes.c
> Compiling smbd/reply.c
> Compiling smbd/sesssetup.c
> Compiling smbd/trans2.c
> Compiling smbd/uid.c
> Compiling smbd/dosmode.c
> Compiling smbd/filename.c
> Compiling smbd/open.c
> Compiling smbd/close.c
> Compiling smbd/blocking.c
> Compiling smbd/sec_ctx.c
> Compiling smbd/srvstr.c
> Compiling smbd/vfs.c
> Compiling smbd/statcache.c
> Compiling smbd/posix_acls.c
> Compiling lib/sysacls.c
> Compiling lib/server_mutex.c
> Compiling smbd/process.c
> Compiling smbd/service.c
> Compiling smbd/error.c
> Compiling printing/printfsp.c
> Compiling lib/sysquotas.c
> Compiling lib/sysquotas_linux.c
> Compiling lib/sysquotas_xfs.c
> Compiling lib/sysquotas_4A.c
> Compiling smbd/change_trust_pw.c
> Compiling smbd/fake_file.c
> Compiling smbd/quotas.c
> Compiling smbd/ntquotas.c
> Compiling lib/afs.c
> Compiling smbd/msdfs.c
> Compiling lib/afs_settoken.c
> Compiling smbd/aio.c
> Compiling smbd/statvfs.c
> Compiling smbd/dmapi.c
> Compiling smbd/mangle.c
> Compiling smbd/mangle_hash.c
> Compiling smbd/mangle_map.c
> Compiling smbd/mangle_hash2.c
> Compiling modules/vfs_default.c
> Compiling modules/vfs_posixacl.c
> Compiling libsmb/clientgen.c
> Compiling libsmb/cliconnect.c
> Compiling libsmb/clifile.c
> Compiling libsmb/clikrb5.c
> libsmb/clikrb5.c: In function `krb5_set_real_time':
> libsmb/clikrb5.c:128: error: dereferencing pointer to incomplete type
> libsmb/clikrb5.c:129: error: dereferencing pointer to incomplete type
> The following command failed:
> cc -I. -I/usr/ports/net/samba3/work/samba-3.0.26a/source  -O2 -pipe
> -march=prescott -D_SAMBA_BUILD_=3 -I/usr/local/include
> -I/usr/ports/net/samba3/work/samba-3.0.26a/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 -DLDAP_DEPRECATED
> -I/usr/ports/net/samba3/work/samba-3.0.26a/source/lib -D_SAMBA_BUILD_=3
> -fPIC -DPIC -c libsmb/clikrb5.c -o libsmb/clikrb5.o
> *** Error code 1
> 
> Stop in /usr/ports/net/samba3/work/samba-3.0.26a/source.
> *** Error code 1
> 
> Stop in /usr/ports/net/samba3.
> *** Error code 1
> 
> Stop in /usr/ports/net/samba3.
> 
> _______________________________________________
> freebsd-net at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-net
> To unsubscribe, send any mail to "freebsd-net-unsubscribe at freebsd.org"



More information about the freebsd-net mailing list