ERROR: libsmb/spnego.c: In function `read_negTokenInit': libsmb/spnego.c:51: warning: passing arg 2 of `asn1_read_OID' from incompatible pointer type libsmb/spnego.c: In function `read_negTokenTarg': libsmb/spnego.c:186: warning: passing arg 2 of `asn1_read_OID' from incompatible pointer type libsmb/spnego.c: In function `free_spnego_data': libsmb/spnego.c:321: warning: passing arg 1 of `free' discards qualifiers from pointer target type libsmb/spnego.c:330: warning: passing arg 1 of `free' discards qualifiers from pointer target type Linking bin/ntlm_auth Compiling utils/smbcquotas.c Linking bin/smbcquotas Compiling client/smbmount.c In file included from /usr/include/linux/fs.h:16, from /usr/include/linux/smb_fs.h:15, from client/smbmount.c:27: /usr/include/linux/list.h:682:2: warning: #warning "don't include kernel headers in userspace" In file included from /usr/include/linux/fs.h:20, from /usr/include/linux/smb_fs.h:15, from client/smbmount.c:27: /usr/include/linux/radix-tree.h: In function `radix_tree_preload_end': /usr/include/linux/radix-tree.h:68: error: invalid type argument of `->' /usr/include/linux/radix-tree.h:68: error: `TIF_NEED_RESCHED' undeclared (first use in this function) /usr/include/linux/radix-tree.h:68: error: (Each undeclared identifier is reported only once /usr/include/linux/radix-tree.h:68: error: for each function it appears in.) In file included from /usr/include/linux/fs.h:23, from /usr/include/linux/smb_fs.h:15, from client/smbmount.c:27: /usr/include/linux/audit.h: At top level: /usr/include/linux/audit.h:101: error: field `nlh' has incomplete type make: *** [client/smbmount.o] Error 1 !!! ERROR: net-fs/samba-3.0.4-r1 failed. !!! Function src_compile, Line 184, Exitcode 2 !!! SAMBA pieces EMERGE INFO: [ root@linuxbox /home/ddicks ] # emerge info Portage 2.0.50-r8 (default-x86-2004.0, gcc-3.3.3, glibc-2.3.3.20040420-r0, 2.6.6) ================================================================= System uname: 2.6.6 i686 Intel(R) Pentium(R) 4 CPU 1.80GHz Gentoo Base System version 1.4.16 distcc 2.13 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] ccache version 2.3 [enabled] Autoconf: sys-devel/autoconf-2.59-r3 Automake: sys-devel/automake-1.8.3 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-O2 -march=pentium4 -fomit-frame-pointer -pipe" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-O2 -march=pentium4 -fomit-frame-pointer -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache sandbox" GENTOO_MIRRORS="ftp://gentoo.agsn.ca/" MAKEOPTS="-j7" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.ca.gentoo.org/gentoo-portage" USE="X aalib alsa avi berkdb bonobo cdr crypt cups directfb dvd encode flac foomaticdb gdbm gif gimpprint gnome gphoto2 gstreamer gtk gtk2 gtkhtml imagemagick imap imlib java javascript joystick jpeg ldap libg++ libwww mad mikmod mmx motif mozilla moznoirc moznomail mozsvg mpeg mpeg4 msn mysql ncurses nptl oggvorbis opengl oss pam pdflib perl png ppds python quicktime readline ruby samba sdl slang spell sse ssl svga tcltk tcpd tiff truetype usb v4l x86 xine xml2 xv zlib" I have tried changing CFLAGS to -march=i686 and get the exact same error.
Same problem here
WFM. "ccache"?
it errors with or without ccache and / or distcc.
If this is the cse it errors with or without ccache and / or distcc. The ebuild should fail when it checks depends and inform you why it has failed.
Colin, it doesn't fail during the checks as you can see by the error(s) I posted. I have my entire FEATURES= line commented out entirely in my make.conf. So regardless of what you think it is supposed to do, it doesn't.
which version of linux-headers do you have installed ?
I have 2.6.5 installed but it did compile with ccache and discc enabled in the features.
I have linux-headers at 2.6.6 on the box that is failing (P4) however, I have linux-headers-2.6.6 on two other boxes (Athlon, and P3) and samba-3.0.4-r1 compiles fine on them.
can you compare the /usr/include/linux/smb_fs.h between the working and non-working machines ?
Created attachment 33175 [details] Non-working (P4) Machine /usr/include/linux/smb_fs.h
Created attachment 33176 [details] Working (Athlon) Machine /usr/include/linux/smb_fs.h
problem with quota enabled kernel?
I don't have quotas enabled.
The problem is that outside of a __KERNEL__ compile radix_tree.h (called in by fs.h) will not properly resolve the preempt defines. The standard 2.6.6 kernel includes are broken - if replaced by, say, linux-2.6.6-mm5, the problem goes away.
Err, incidentally... I'm on kernel 2.6.5 with 2.4.22 headers and it's broken for me in the same way.
just for info: this is a well-known issue on samba-bugs, but the resolution is somewhat unclear (in the sense that is not fully reproducible)... https://bugzilla.samba.org/show_bug.cgi?id=400 Dale (as per comment 8): what are the kernel compile configs differences between the two machines? Also: can you compile samba on the failing p4 with CFLAGS="-mcpu=pentium3 -march=pentium3 -O2 -pipe"? Let's narrow this thing down...
Created attachment 33207 [details] Kernel Config - Pentium4
Created attachment 33208 [details] Kernel Config - Athlon
Created attachment 33209 [details] Kernel Config - Pentium 3
Same error(s) with CFLAGS="-mcpu=pentium3 -march=pentium3 -O2 -pipe" I tried it with CFLAGS="" as well, same error. I just recompiled my kernel so I am going to try it again. IF that doesn't work then I am going to emerge linux-headers-2.6.5 temporarily and see if it compiles against those, and then re-emerge linux-headers-2.6.6. PS: I recompiled all the deps for SAMBA as well: popt, readline, xml, xml2, acl, cups, ldap, pam, python, autoconf, sed-4 but it didn't help.
Dropping to linux-headers-2.6.5 and recompiling samba-3.0.4-r1 worked so Paul is right.
I am using gentoo-dev-sources with linux-headers-2.6.6 and dont' have any problem. # emerge info Portage 2.0.51_pre10 (default-x86-2004.0, gcc-3.4.0, glibc-2.3.3.20040420-r0, 2.6.5-gentoo-r1) ================================================================= System uname: 2.6.5-gentoo-r1 i686 Intel(R) Pentium(R) 4 CPU 1.80GHz Gentoo Base System version 1.4.16 ccache version 2.3 [disabled] Autoconf: sys-devel/autoconf-2.59-r4 Automake: sys-devel/automake-1.8.5 Binutils: sys-devel/binutils-2.14.90.0.8-r1 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-O2 -march=pentium4 -pipe " CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.2/share/config /usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-O2 -march=pentium4 -pipe " DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs sandbox" GENTOO_MIRRORS="http://gentoo.oregonstate.edu" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage" USE="X acpi acpi4linux alsa apache2 apm autofs avi berkdb cdr cjk composite crypt cups directfb dnd dvd dvdr encode fam fbcon fbdev foomaticdb gdbm gif gnome gpm gstreamer gtk gtk2 imlib ipv6 java javascript jpeg kde libg++ libwww mad md5sum mikmod mmx motif mozilla mpeg mysql ncurses nls nptl oggvorbis oss pam pdflib perl png python qt quicktime readline samba sdl slang spell sse ssl stroke svga tcltk tcpd truetype usb x86 xine xml xml2 xmms xosd xv xvid zlib" # emerge -pv linux-headers These are the packages that I would merge, in order: Calculating dependencies ...done! [ebuild R ] sys-kernel/linux-headers-2.6.6 -build 0 kB
interesting: seems it is not fully reproducible. it's not only a compiler issue, else CFLAGS should have effect nor some config in kernel (so, that's not the sources) seems like kernel headers then, but on some hardware they produce no problem. I consider this fixed, if none has sistematically compile fault with various headers versions
It doesn't work for me. I have the latest linux-headers 2.4.22 that are considered unstable. I didn't modify the cflags for the athlonxp-stage3 that I have used so I don't think it is actually resolved if it mostly compile on a unsupported kernel-header right ? (maybe I'm wrong I don't know) Here is my emerge info : Portage 2.0.50-r8 (default-x86-2004.0, gcc-3.3.3, glibc-2.3.3.20040420-r0, 2.6.5-mm6) ================================================================= System uname: 2.6.5-mm6 i686 Mobile AMD Athlon(tm) XP 1700+ Gentoo Base System version 1.4.16 Autoconf: sys-devel/autoconf-2.59-r4 Automake: sys-devel/automake-1.8.5 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-O2 -march=athlon-xp -pipe" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-O2 -march=athlon-xp -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache sandbox" GENTOO_MIRRORS="ftp://gentoo.noved.org/ http://gentoo.noved.org/ http://mirrors.tds.net/gentoo http://mirror.clarkson.edu/pub/distributions/gentoo/ http://gentoo.mirrors.pair.com/ http://mirror.cpsc.ucalgary.ca/mirror/gentoo.org http://gentoo.chem.wisc.edu/gentoo/ http://ftp.snt.utwente.nl/pub/os/linux/gentoo http://lug.mtu.edu/gentoo/ http://gentoo.tiscali.nl/gentoo/ http://sunsite.cnlab-switch.ch/ftp/mirror/gentoo/ http://gentoo.mirror.sdv.fr" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="3dnow X aalib acl acpi adns alsa apache2 apm arts avi bindist bonobo cdr crypt cscope cups dedicated dga directfb dvd encode esd ethereal evo fbcon firebird flash foomaticdb gdbm gif gphoto2 gpm gstreamer gtk2 gtkhtml guile imap imlib innodb jpeg kde kerberos ldap libg++ libwww lirc mad mikmod mmx motif mpeg mpi mysql nas ncurses nls oggvorbis opengl oss pam pcmcia pdflib perl plotutils png pnp ppds python qt quicktime radeon readline samba sasl sdl slang slp snmp spell sse ssl svga tcltk tcpd tiff truetype trusted unicode usb video_cards_radeon wmf wxwindows x86 xinerama xml2 xmms xv zlib" Here is the error log : make[1]: Leaving directory `/var/tmp/portage/samba-3.0.4-r1/work/samba-3.0.4/source' Using FLAGS = -O2 -march=athlon-xp -pipe -I/usr/include/heimdal -I/usr/include/mysql -march=athlon-xp -pipe -DHAVE_ERRNO_AS_DEFINE=1 -DUSE_OLD_FUNCTIONS -I/usr/include/libxml2 -Iinclude -I/var/tmp/portage/samba-3.0.4-r1/work/samba-3.0.4/source/include -I/var/tmp/portage/samba-3.0.4-r1/work/samba-3.0.4/source/ubiqx -I/var/tmp/portage/samba-3.0.4-r1/work/samba-3.0.4/source/smbwrapper -I. -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -I/usr/include/heimdal -I/var/tmp/portage/samba-3.0.4-r1/work/samba-3.0.4/source LIBS = -lcrypt -lresolv -lnsl -ldl LDSHFLAGS = -shared -Wl,-rpath,/usr/lib LDFLAGS = -Wl,-rpath,/usr/lib creating /var/tmp/portage/samba-3.0.4-r1/work/samba-3.0.4/source/utils/ntlm_auth_proto.h Compiling dynconfig.c In file included from include/includes.h:421, from dynconfig.c:21: /usr/include/gssapi/gssapi.h:119: error: conflicting types for `gss_name_t' /usr/include/heimdal/gssapi.h:64: error: previous declaration of `gss_name_t' /usr/include/gssapi/gssapi.h:120: error: conflicting types for `gss_cred_id_t' /usr/include/heimdal/gssapi.h:103: error: previous declaration of `gss_cred_id_t' /usr/include/gssapi/gssapi.h:121: error: conflicting types for `gss_ctx_id_t' /usr/include/heimdal/gssapi.h:76: error: previous declaration of `gss_ctx_id_t' /usr/include/gssapi/gssapi.h:150: error: redefinition of `struct gss_OID_desc_struct' /usr/include/gssapi/gssapi.h:156: error: redefinition of `struct gss_OID_set_desc_struct' /usr/include/gssapi/gssapi.h:161: error: redefinition of `struct gss_buffer_desc_struct' /usr/include/gssapi/gssapi.h:166: error: redefinition of `struct gss_channel_bindings_struct' /usr/include/gssapi/gssapi.h:469: error: conflicting types for `gss_acquire_cred' /usr/include/heimdal/gssapi.h:466: error: previous declaration of `gss_acquire_cred' /usr/include/gssapi/gssapi.h:474: error: conflicting types for `gss_release_cred' /usr/include/heimdal/gssapi.h:471: error: previous declaration of `gss_release_cred' /usr/include/gssapi/gssapi.h:490: error: conflicting types for `gss_init_sec_context' /usr/include/heimdal/gssapi.h:487: error: previous declaration of `gss_init_sec_context' /usr/include/gssapi/gssapi.h:504: error: conflicting types for `gss_accept_sec_context' /usr/include/heimdal/gssapi.h:501: error: previous declaration of `gss_accept_sec_context' /usr/include/gssapi/gssapi.h:510: error: conflicting types for `gss_process_context_token' /usr/include/heimdal/gssapi.h:507: error: previous declaration of `gss_process_context_token' /usr/include/gssapi/gssapi.h:516: error: conflicting types for `gss_delete_sec_context' /usr/include/heimdal/gssapi.h:513: error: previous declaration of `gss_delete_sec_context' /usr/include/gssapi/gssapi.h:522: error: conflicting types for `gss_context_time' /usr/include/heimdal/gssapi.h:519: error: previous declaration of `gss_context_time' /usr/include/gssapi/gssapi.h:531: error: conflicting types for `gss_get_mic' /usr/include/heimdal/gssapi.h:527: error: previous declaration of `gss_get_mic' /usr/include/gssapi/gssapi.h:540: error: conflicting types for `gss_verify_mic' /usr/include/heimdal/gssapi.h:535: error: previous declaration of `gss_verify_mic' /usr/include/gssapi/gssapi.h:551: error: conflicting types for `gss_wrap' /usr/include/heimdal/gssapi.h:545: error: previous declaration of `gss_wrap' /usr/include/gssapi/gssapi.h:561: error: conflicting types for `gss_unwrap' /usr/include/heimdal/gssapi.h:554: error: previous declaration of `gss_unwrap' /usr/include/gssapi/gssapi.h:582: error: conflicting types for `gss_compare_name' /usr/include/heimdal/gssapi.h:575: error: previous declaration of `gss_compare_name' /usr/include/gssapi/gssapi.h:589: error: conflicting types for `gss_display_name' /usr/include/heimdal/gssapi.h:582: error: previous declaration of `gss_display_name' /usr/include/gssapi/gssapi.h:596: error: conflicting types for `gss_import_name' /usr/include/heimdal/gssapi.h:589: error: previous declaration of `gss_import_name' /usr/include/gssapi/gssapi.h:601: error: conflicting types for `gss_release_name' /usr/include/heimdal/gssapi.h:600: error: previous declaration of `gss_release_name' /usr/include/gssapi/gssapi.h:620: error: conflicting types for `gss_inquire_cred' /usr/include/heimdal/gssapi.h:619: error: previous declaration of `gss_inquire_cred' /usr/include/gssapi/gssapi.h:633: error: conflicting types for `gss_inquire_context' /usr/include/heimdal/gssapi.h:631: error: previous declaration of `gss_inquire_context' /usr/include/gssapi/gssapi.h:643: error: conflicting types for `gss_wrap_size_limit' /usr/include/heimdal/gssapi.h:640: error: previous declaration of `gss_wrap_size_limit' /usr/include/gssapi/gssapi.h:674: error: conflicting types for `gss_add_cred' /usr/include/heimdal/gssapi.h:654: error: previous declaration of `gss_add_cred' /usr/include/gssapi/gssapi.h:685: error: conflicting types for `gss_inquire_cred_by_mech' /usr/include/heimdal/gssapi.h:664: error: previous declaration of `gss_inquire_cred_by_mech' /usr/include/gssapi/gssapi.h:692: error: conflicting types for `gss_export_sec_context' /usr/include/heimdal/gssapi.h:670: error: previous declaration of `gss_export_sec_context' /usr/include/gssapi/gssapi.h:699: error: conflicting types for `gss_import_sec_context' /usr/include/heimdal/gssapi.h:676: error: previous declaration of `gss_import_sec_context' /usr/include/gssapi/gssapi.h:762: error: conflicting types for `gss_sign' /usr/include/heimdal/gssapi.h:738: error: previous declaration of `gss_sign' /usr/include/gssapi/gssapi.h:770: error: conflicting types for `gss_verify' /usr/include/heimdal/gssapi.h:746: error: previous declaration of `gss_verify' /usr/include/gssapi/gssapi.h:780: error: conflicting types for `gss_seal' /usr/include/heimdal/gssapi.h:756: error: previous declaration of `gss_seal' /usr/include/gssapi/gssapi.h:789: error: conflicting types for `gss_unseal' /usr/include/heimdal/gssapi.h:765: error: previous declaration of `gss_unseal' /usr/include/gssapi/gssapi.h:796: error: conflicting types for `gss_export_name' /usr/include/heimdal/gssapi.h:595: error: previous declaration of `gss_export_name' /usr/include/gssapi/gssapi.h:803: error: conflicting types for `gss_duplicate_name' /usr/include/heimdal/gssapi.h:719: error: previous declaration of `gss_duplicate_name' /usr/include/gssapi/gssapi.h:811: error: conflicting types for `gss_canonicalize_name' /usr/include/heimdal/gssapi.h:713: error: previous declaration of `gss_canonicalize_name' make: *** [dynconfig.o] Error 1 !!! ERROR: net-fs/samba-3.0.4-r1 failed. !!! Function src_compile, Line 184, Exitcode 2 !!! SAMBA pieces
Do you have both heimdal and mit-krb5 installed? If you do; emerge -C either one. IIRC, samba preferred mit-krb5. BTW, this is a different compile bug.
Actually it is a different compile bug now that you mention it but I didn't want to create another bug report since the topic was "net-fs/samba-3.0.4-r1 fails to compile". I though it would have been redundant and marked duplicate (and create useless work for people who watch out for those). I don't know how these two conflicting version came in my system but at least now it works now. Thank you very much :).
Sooo... sorry, I'm a little confused - what should my resolution be to get my compile error to go away? As I said, I'm on linux-headers-2.4.22 and it doesn't compile. Since the bug is set as fixed, I would imagine that there's something I can do to make it work on my machines but I cannot see my solution in the notes here...
Vermyndax (as per comment 27): for what we tested here, seems like a kernel headers compatibility issue. If you like to stick to gentoo headers, just do an 'emerge sys-kernel/linux-headers' (latest stable at now: 2.4.21-r1). Should you need a more recent version, you could use the masked ones. complete list is 'ls -la /usr/portage/sys-kernel/linux-headers/*.ebuild', 'emerge -pv /usr/portage/sys-kernel/linux-headers/linux-headers-2.x.yy'. Please note that these are masked for good reasons, so their functionality is not guaranteed.
Hmmm... only problem with all of that is that my Gentoo server machine emerged 3.0.4-r1 just fine. That server is on linux-headers-2.4.22. My workstation is on linux-headers-2.4.22 and cannot successfully emerge 3.0.4-r1...
Vermyndax: i have linux-headers-2.4.21-r1 installed, samba-3.0.4-r1 works fine with them here. Also i don't have any /usr/include/linux/radix-tree.h (radix tree was added in the 2.5 cycle). Please doublecheck that /usr/include/linux has the correct header files. If the output of your error differs from that here, please post it, or open a new bug !
My apologies, I was experiencing the problem that Jean-Francois posted about (different compile error). I unmerged heimdal and am trying again with Samba... sorry for my confusion (which happens often).