Try to merge 0.35-r4 ebuild with kernel 2.6.24, it fails because of api changes from 2.6.22. Portage 2.1.4.4 (default-linux/x86/2007.0/desktop, gcc-4.1.2, glibc-2.6.1-r0, 2.6.24-gentoo-r3 i686) ================================================================= System uname: 2.6.24-gentoo-r3 i686 Intel(R) Pentium(R) M processor 1.60GHz Timestamp of tree: Sun, 30 Mar 2008 17:15:01 +0000 distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] ccache version 2.4 [enabled] app-shells/bash: 3.2_p17-r1 dev-java/java-config: 1.3.7, 2.1.4 dev-lang/python: 2.3.5-r3, 2.4.4-r9 dev-python/pycrypto: 2.0.1-r6 dev-util/ccache: 2.4-r7 sys-apps/baselayout: 1.12.11.1 sys-apps/sandbox: 1.2.18.1-r2 sys-devel/autoconf: 2.13, 2.61-r1 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10 sys-devel/binutils: 2.18-r1 sys-devel/gcc-config: 1.4.0-r4 sys-devel/libtool: 1.5.26 virtual/os-headers: 2.6.23-r3 ACCEPT_KEYWORDS="x86" CBUILD="i686-pc-linux-gnu" CFLAGS="-O2 -mtune=i686 -fomit-frame-pointer -pipe -mno-tls-direct-seg-refs" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /opt/openjms/config /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config /var/bind" CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/splash /etc/terminfo /etc/texmf/web2c /etc/udev/rules.d" CXXFLAGS="-O2 -mtune=i686 -fomit-frame-pointer -pipe -mno-tls-direct-seg-refs" DISTDIR="/usr/portage/distfiles" FEATURES="ccache distlocks metadata-transfer noinfo parallel-fetch sandbox sfperms strict unmerge-orphans userfetch" GENTOO_MIRRORS="ftp://ftp.gentoo.mesh-solutions.com/gentoo/ " LANG="de_DE.utf8" LC_ALL="de_DE.utf8" LINGUAS="de" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage/layman/gentoo-de /usr/local/portage/default /usr/local/portage/layman/perl-experimental /usr/local/portage/layman/lila-theme" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="X aalib acl acpi alsa arts bash-completion berkdb bzip2 cairo cdr cjk cli cracklib crypt cscope cups dbus dga directfb dri dvd dvdr dvdread eds emboss encode esd evo fam fbcon firefox flac fortran gdbm ggi gif gnome gpm gstreamer gtk gtkhtml hal iconv idn ipv6 isdnlog jack java jikes jpeg jpeg2k kde kerberos kolab lcms ldap libnotify mad midi mikmod mmx modperl mouse mp3 mpeg mudflap musepack mysql nas ncurses nls nptl nptlonly odbc ogg opengl openmp oss pam pch pcre pcsc-lite pdf perl pkcs11 png postgres pppd python qt3 qt3support qt4 quicktime readline reflection samba scanner sdl session slang smartcard snmp spell spl sse sse2 ssl startup-notification svg svga tcltk tcpd tiff truetype unicode vim-syntax vorbis win32codecs x86 xinerama xml xorg xprint xv zeroconf zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias asis auth_digest authn_dbd cern_meta charset_lite dbd dumpio ident imagemap log_forensic proxy proxy_ajp proxy_balancer proxy_connect proxy_ftp proxy_http version" APACHE2_MPMS="prefork" ELIBC="glibc" INPUT_DEVICES="evdev keyboard mouse synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="de" LIRC_DEVICES="pctv" USERLAND="GNU" VIDEO_CARDS="radeon v4l" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LDFLAGS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS I've made some patches to fix them (api changes etc.). With them it builds and loads fine again and shfs is usable again.
Created attachment 147736 [details] New Ebuild Ebuild without dentry patch, included upstream.
Created attachment 147737 [details, diff] fcache patch
Created attachment 147738 [details, diff] inode patch
Created attachment 147740 [details, diff] shfs_debug.h patch
Created attachment 147742 [details, diff] shfs_fs.h patch
*** Bug 222587 has been marked as a duplicate of this bug. ***
Hi! Do the patches work with 2.6.25-gentoo-r7? Do I have to copy the ebuild to /usr/portage/net-fs/shfs? The patches to /usr/portage/net-fs/shfs/files or /usr/portage/net-fs/shfs/files/0.35? Or it doesn't matter? Best regards, Markus
They work with 2.6.27 too, so they should with 2.6.25. Look at the ebuild to find out where you should put them.
Hallo Torsten, es funktioniert irgendwie nicht. Mit der Struktur dentry scheint irgendetwas nicht zu stimmen. Mein emerge --info habe ich unten gepostet. # emerge =net-fs/shfs-0.35-r5 Calculating dependencies... done! >>> Verifying ebuild Manifests... >>> Emerging (1 of 1) net-fs/shfs-0.35-r5 to / * shfs-0.35.tar.gz RMD160 SHA1 SHA256 size ;-) ... [ ok ] * checking ebuild checksums ;-) ... [ ok ] * checking auxfile checksums ;-) ... [ ok ] * checking miscfile checksums ;-) ... [ ok ] * checking shfs-0.35.tar.gz ;-) ... [ ok ] * Determining the location of the kernel source code * Found kernel source directory: * /usr/src/linux * Found kernel object directory: * /lib/modules/2.6.25-gentoo-r7/build * Found sources for kernel version: * 2.6.25-gentoo-r7 * Checking for suitable kernel configuration options... [ ok ] >>> Unpacking source... >>> Unpacking shfs-0.35.tar.gz to /var/tmp/portage/net-fs/shfs-0.35-r5/work * Applying df.patch ... [ ok ] * Applying fcache.c.patch ... [ ok ] * Applying shfs-0.35-2.6.18-dentry.patch ... [ ok ] * Applying shfs-0.35-clean-inode-clear.patch ... [ ok ] * Applying shfs-0.35-gcc4.patch ... [ ok ] * Applying shfs-0.35-inode-and-fs.patch ... [ ok ] * Applying shfs_debug.h.patch ... [ ok ] * Applying shfs_fs.h.patch ... [ ok ] * Applying space_chars.patch ... [ ok ] * Applying uidgid32.patch ... [ ok ] * Converting shfs-0.35/shfs/Linux-2.6/Makefile to use M= instead of SUBDIRS= ... [ ok ] >>> Source unpacked. >>> Compiling source in /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35 ... * Preparing shfs module make -C /usr/src/linux M=/var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6 modules make[1]: Entering directory `/usr/src/linux-2.6.25-gentoo-r7' CC [M] /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.o /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c: In function ‘shfs_invalidate_dircache_entries’: /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:71: error: ‘struct dentry’ has no member named ‘d_child’ /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:71: warning: type defaults to ‘int’ in declaration of ‘__mptr’ /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:71: warning: initialization from incompatible pointer type /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:71: error: ‘struct dentry’ has no member named ‘d_child’ /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c: In function ‘shfs_dget_fpos’: /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:104: error: ‘struct dentry’ has no member named ‘d_child’ /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:104: warning: type defaults to ‘int’ in declaration of ‘__mptr’ /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:104: warning: initialization from incompatible pointer type /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:104: error: ‘struct dentry’ has no member named ‘d_child’ make[2]: *** [/var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.o] Error 1 make[1]: *** [_module_/var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6] Error 2 make[1]: Leaving directory `/usr/src/linux-2.6.25-gentoo-r7' make: *** [default] Error 2 * * ERROR: net-fs/shfs-0.35-r5 failed. * Call stack: * ebuild.sh, line 49: Called src_compile * environment, line 3234: Called linux-mod_src_compile * environment, line 2475: Called die * The specific snippet of code: * eval "emake HOSTCC=\"$(tc-getBUILD_CC)\" CROSS_COMPILE=${CHOST}- LDFLAGS=\"$(get_abi_LDFLAGS)\" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS} " || die "Unable to emake HOSTCC="$(tc-getBUILD_CC)" CROSS_COMPILE=${CHOST}- LDFLAGS="$(get_abi_LDFLAGS)" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS}"; * The die message: * Unable to emake HOSTCC=x86_64-pc-linux-gnu-gcc CROSS_COMPILE=x86_64-pc-linux-gnu- LDFLAGS= -j1 KERNEL_SOURCES=/usr/src/linux default * * If you need support, post the topmost build error, and the call stack if relevant. * A complete build log is located at '/var/tmp/portage/net-fs/shfs-0.35-r5/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/net-fs/shfs-0.35-r5/temp/environment'. * * Messages for package net-fs/shfs-0.35-r5: * * ERROR: net-fs/shfs-0.35-r5 failed. * Call stack: * ebuild.sh, line 49: Called src_compile * environment, line 3234: Called linux-mod_src_compile * environment, line 2475: Called die * The specific snippet of code: * eval "emake HOSTCC=\"$(tc-getBUILD_CC)\" CROSS_COMPILE=${CHOST}- LDFLAGS=\"$(get_abi_LDFLAGS)\" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS} " || die "Unable to emake HOSTCC="$(tc-getBUILD_CC)" CROSS_COMPILE=${CHOST}- LDFLAGS="$(get_abi_LDFLAGS)" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS}"; * The die message: * Unable to emake HOSTCC=x86_64-pc-linux-gnu-gcc CROSS_COMPILE=x86_64-pc-linux-gnu- LDFLAGS= -j1 KERNEL_SOURCES=/usr/src/linux default * * If you need support, post the topmost build error, and the call stack if relevant. * A complete build log is located at '/var/tmp/portage/net-fs/shfs-0.35-r5/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/net-fs/shfs-0.35-r5/temp/environment'. * # emerge --info Portage 2.1.4.5 (default/linux/amd64/2008.0, gcc-4.3.2, glibc-2.8_p20080602-r0, 2.6.25-gentoo-r7 x86_64) ================================================================= System uname: 2.6.25-gentoo-r7 x86_64 AMD Athlon(tm) 64 X2 Dual Core Processor 6000+ Timestamp of tree: Sun, 09 Nov 2008 19:45:03 +0000 ccache version 2.4 [enabled] app-shells/bash: 3.2_p33 dev-java/java-config: 1.3.7, 2.1.6-r1 dev-lang/python: 2.5.2-r7 dev-util/ccache: 2.4-r7 dev-util/cmake: 2.4.6-r1 sys-apps/baselayout: 1.12.11.1 sys-apps/sandbox: 1.2.18.1-r2 sys-devel/autoconf: 2.13, 2.61-r2 sys-devel/automake: 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1-r1 sys-devel/binutils: 2.18-r3 sys-devel/gcc-config: 1.4.0-r4 sys-devel/libtool: 1.5.26 virtual/os-headers: 2.6.23-r3 ACCEPT_KEYWORDS="amd64" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=athlon64 -O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config /var/lib/hsqldb" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/udev/rules.d" CXXFLAGS="-march=athlon64 -O2 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="ccache distlocks metadata-transfer sandbox sfperms strict unmerge-orphans userfetch" GENTOO_MIRRORS="ftp://ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/" LANG="en_US.utf8" LC_ALL="en_US.utf8" LDFLAGS="-Wl,-O1" LINGUAS="en de" MAKEOPTS="-j3" PKGDIR="/usr/portage/packages" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/portage/local/layman/java-overlay" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="X acl acpi alsa amd64 arts berkdb blas bluetooth bzip2 caps cdinstall cdr clamav cli cracklib crypt cups cupsddk dri dvd dvdr dvdread encode fbcon firefox fortran gcj gdbm gif gnuplot gpm gstreamer iconv imap ipv6 isdnlog java jpeg jpeg2k kde lapack latex libedit lm_sensors midi mmx moznopango mp3 mplayer mudflap multilib ncurses nls nptl nptlonly nsplugin oav opengl openmp pam pcre pdf perl png ppds pppd python qt3 qt4 readline reflection samba scanner sdl session spl sse sse2 ssl startup-notification sysfs tcpd tiff truetype unicode usb vorbis wmf xorg xulrunner xv xvid zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en de" USERLAND="GNU" VIDEO_CARDS="fglrx vmware" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
(In reply to comment #9) > Hallo Torsten, > > es funktioniert irgendwie nicht. Mit der Struktur dentry scheint irgendetwas > nicht zu stimmen. Mein emerge --info habe ich unten gepostet. Herrschaften, english please ;)
I put the ebuild in "/usr/portage/net-fs/shfs" and the patches (fcache.c.patch, inode.c.patch, shfs_debug.h.patch, shfs_fs.h.patch) in "/usr/portage/net-fs/shfs/files/0.35". The patches seem to be applied. The compilation fails: /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:71: error: ‘struct dentry’ has no member named ‘d_child’ My emerge --info is at the bottom of Comment #9. # emerge shfs Calculating dependencies... done! >>> Verifying ebuild Manifests... >>> Emerging (1 of 1) net-fs/shfs-0.35-r5 to / * shfs-0.35.tar.gz RMD160 SHA1 SHA256 size ;-) ... [ ok ] * checking ebuild checksums ;-) ... [ ok ] * checking auxfile checksums ;-) ... [ ok ] * checking miscfile checksums ;-) ... [ ok ] * checking shfs-0.35.tar.gz ;-) ... [ ok ] * Determining the location of the kernel source code * Found kernel source directory: * /usr/src/linux * Found kernel object directory: * /lib/modules/2.6.25-gentoo-r7/build * Found sources for kernel version: * 2.6.25-gentoo-r7 * Checking for suitable kernel configuration options... [ ok ] >>> Unpacking source... >>> Unpacking shfs-0.35.tar.gz to /var/tmp/portage/net-fs/shfs-0.35-r5/work * Applying df.patch ... [ ok ] * Applying fcache.c.patch ... [ ok ] * Applying inode.c.patch ... [ ok ] * Applying shfs-0.35-2.6.18-dentry.patch ... [ ok ] * Applying shfs-0.35-clean-inode-clear.patch ... [ ok ] * Applying shfs-0.35-gcc4.patch ... [ ok ] * Applying shfs-0.35-inode-and-fs.patch ... [ ok ] * Applying shfs_debug.h.patch ... [ ok ] * Applying shfs_fs.h.patch ... [ ok ] * Applying space_chars.patch ... [ ok ] * Applying uidgid32.patch ... [ ok ] * Converting shfs-0.35/shfs/Linux-2.6/Makefile to use M= instead of SUBDIRS= ... [ ok ] >>> Source unpacked. >>> Compiling source in /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35 ... * Preparing shfs module make -C /usr/src/linux M=/var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6 modules make[1]: Entering directory `/usr/src/linux-2.6.25-gentoo-r7' CC [M] /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.o /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c: In function ‘shfs_invalidate_dircache_entries’: /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:71: error: ‘struct dentry’ has no member named ‘d_child’ /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:71: warning: type defaults to ‘int’ in declaration of ‘__mptr’ /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:71: warning: initialization from incompatible pointer type /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:71: error: ‘struct dentry’ has no member named ‘d_child’ /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c: In function ‘shfs_dget_fpos’: /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:104: error: ‘struct dentry’ has no member named ‘d_child’ /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:104: warning: type defaults to ‘int’ in declaration of ‘__mptr’ /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:104: warning: initialization from incompatible pointer type /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:104: error: ‘struct dentry’ has no member named ‘d_child’ make[2]: *** [/var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.o] Error 1 make[1]: *** [_module_/var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6] Error 2 make[1]: Leaving directory `/usr/src/linux-2.6.25-gentoo-r7' make: *** [default] Error 2 * * ERROR: net-fs/shfs-0.35-r5 failed. * Call stack: * ebuild.sh, line 49: Called src_compile * environment, line 3234: Called linux-mod_src_compile * environment, line 2475: Called die * The specific snippet of code: * eval "emake HOSTCC=\"$(tc-getBUILD_CC)\" CROSS_COMPILE=${CHOST}- LDFLAGS=\"$(get_abi_LDFLAGS)\" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS} " || die "Unable to emake HOSTCC="$(tc-getBUILD_CC)" CROSS_COMPILE=${CHOST}- LDFLAGS="$(get_abi_LDFLAGS)" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS}"; * The die message: * Unable to emake HOSTCC=x86_64-pc-linux-gnu-gcc CROSS_COMPILE=x86_64-pc-linux-gnu- LDFLAGS= -j1 KERNEL_SOURCES=/usr/src/linux default * * If you need support, post the topmost build error, and the call stack if relevant. * A complete build log is located at '/var/tmp/portage/net-fs/shfs-0.35-r5/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/net-fs/shfs-0.35-r5/temp/environment'. * * Messages for package net-fs/shfs-0.35-r5: * * ERROR: net-fs/shfs-0.35-r5 failed. * Call stack: * ebuild.sh, line 49: Called src_compile * environment, line 3234: Called linux-mod_src_compile * environment, line 2475: Called die * The specific snippet of code: * eval "emake HOSTCC=\"$(tc-getBUILD_CC)\" CROSS_COMPILE=${CHOST}- LDFLAGS=\"$(get_abi_LDFLAGS)\" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS} " || die "Unable to emake HOSTCC="$(tc-getBUILD_CC)" CROSS_COMPILE=${CHOST}- LDFLAGS="$(get_abi_LDFLAGS)" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS}"; * The die message: * Unable to emake HOSTCC=x86_64-pc-linux-gnu-gcc CROSS_COMPILE=x86_64-pc-linux-gnu- LDFLAGS= -j1 KERNEL_SOURCES=/usr/src/linux default * * If you need support, post the topmost build error, and the call stack if relevant. * A complete build log is located at '/var/tmp/portage/net-fs/shfs-0.35-r5/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/net-fs/shfs-0.35-r5/temp/environment'. *
I uncommented these lines in the shfs-0.35-r5 ebuild: if kernel_is ge 2 6 16 ; then epatch ${FILESDIR}/${PN}-0.35-2.6.16-dentry.patch fi The /usr/portage/net-fs/shfs/files/shfs-0.35-2.6.16-dentry.patch is applied, the compilation finishes without errors, there are however some warnings: (My Kernel version is now 2.6.27-gentoo-r2) >>> Emerging (1 of 1) net-fs/shfs-0.35-r5 to / * shfs-0.35.tar.gz RMD160 SHA1 SHA256 size ;-) ... [ ok ] * checking ebuild checksums ;-) ... [ ok ] * checking auxfile checksums ;-) ... [ ok ] * checking miscfile checksums ;-) ... [ ok ] * checking shfs-0.35.tar.gz ;-) ... [ ok ] * Determining the location of the kernel source code * Found kernel source directory: * /usr/src/linux * Found kernel object directory: * /lib/modules/2.6.27-gentoo-r2/build * Found sources for kernel version: * 2.6.27-gentoo-r2 * Checking for suitable kernel configuration options... [ ok ] >>> Unpacking source... >>> Unpacking shfs-0.35.tar.gz to /var/tmp/portage/net-fs/shfs-0.35-r5/work * Applying df.patch ... [ ok ] * Applying fcache.c.patch ... [ ok ] * Applying inode.c.patch ... [ ok ] * Applying shfs-0.35-2.6.18-dentry.patch ... [ ok ] * Applying shfs-0.35-clean-inode-clear.patch ... [ ok ] * Applying shfs-0.35-gcc4.patch ... [ ok ] * Applying shfs-0.35-inode-and-fs.patch ... [ ok ] * Applying shfs_debug.h.patch ... [ ok ] * Applying shfs_fs.h.patch ... [ ok ] * Applying space_chars.patch ... [ ok ] * Applying uidgid32.patch ... [ ok ] * Converting shfs-0.35/shfs/Linux-2.6/Makefile to use M= instead of SUBDIRS= ... [ ok ] * Applying shfs-0.35-2.6.16-dentry.patch ... [ ok ] >>> Source unpacked. >>> Compiling source in /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35 ... * Preparing shfs module make -C /usr/src/linux M=/var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6 modules make[1]: Entering directory `/usr/src/linux-2.6.27-gentoo-r2' CC [M] /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.o CC [M] /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dir.o CC [M] /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/fcache.o CC [M] /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/file.o /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/file.c:379: warning: initialization from incompatible pointer type CC [M] /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/inode.o CC [M] /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/ioctl.o CC [M] /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/proc.o /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/proc.c: In function ‘sock_write’: /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/proc.c:188: warning: format ‘%d’ expects type ‘int’, but argument 2 has type ‘ssize_t’ /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/proc.c:223: warning: format ‘%d’ expects type ‘int’, but argument 2 has type ‘ssize_t’ CC [M] /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/shell.o /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/shell.c: In function ‘do_ls’: /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/shell.c:431: warning: format ‘%d’ expects type ‘int’, but argument 5 has type ‘nlink_t’ CC [M] /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/symlink.o LD [M] /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/shfs.o Building modules, stage 2. MODPOST 1 modules CC /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/shfs.mod.o LD [M] /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/shfs.ko make[1]: Leaving directory `/usr/src/linux-2.6.27-gentoo-r2' gcc -g -Wall -I- -I. -I../shfs/Linux-2.4/ -DSHFS_VERSION=\"unknown\" -c shfsmount.c -o shfsmount.o sed -e '/^[ ]*#/d;/^$/d;s/\\/\\\\/g;s/\"/\\\"/g;s/^\(.*\)$/\"\1\\n\"/' <shell-test.in | sed -e "s/'/'\\\\\\\\''/g" >shell-test.h sed -e '/^[ ]*#/d;/^$/d;s/\\/\\\\/g;s/\"/\\\"/g;s/^\(.*\)$/\"\1\\n\"/' <shell-code.in | sed -e "s/'/'\\\\\\\\''/g" >shell-code.h sed -e '/^[ ]*#/d;/^$/d;s/\\/\\\\/g;s/\"/\\\"/g;s/^\(.*\)$/\"\1\\n\"/' <perl-test.in | sed -e "s/'/'\\\\\\\\''/g" >perl-test.h cc1: note: obsolete option -I- used, please use -iquote instead shfsmount.c: In function ‘mount_ok’: shfsmount.c:204: warning: pointer targets in passing argument 2 of ‘getgroups’ differ in signedness sed -e '/^[ ]*#/d;/^$/d;s/\\/\\\\/g;s/\"/\\\"/g;s/^\(.*\)$/\"\1\\n\"/' <perl-code.in | sed -e "s/'/'\\\\\\\\''/g" >perl-code.h gcc -g -Wall -I- -I. -I../shfs/Linux-2.4/ -DSHFS_VERSION=\"unknown\" -c shfsumount.c -o shfsumount.o cc1: note: obsolete option -I- used, please use -iquote instead gcc -o shfsumount shfsumount.o gcc -g -Wall -I- -I. -I../shfs/Linux-2.4/ -DSHFS_VERSION=\"unknown\" -c proto.c -o proto.o cc1: note: obsolete option -I- used, please use -iquote instead gcc -o shfsmount shfsmount.o proto.o >>> Source compiled. >>> Test phase [not enabled]: net-fs/shfs-0.35-r5 >>> Install shfs-0.35-r5 into /var/tmp/portage/net-fs/shfs-0.35-r5/image/ category net-fs * Installing shfs module * Setting SUID bit on /usr/bin executables... * Adding /sbin/mount.shfs symlink... >>> Completed installing shfs-0.35-r5 into /var/tmp/portage/net-fs/shfs-0.35-r5/image/ ecompressdir: bzip2 -9 /usr/share/man strip: x86_64-pc-linux-gnu-strip --strip-unneeded -R .comment usr/bin/shfsmount usr/bin/shfsumount lib/modules/2.6.27-gentoo-r2/misc/fs/shfs.ko * checking 6 files for package collisions >>> Merging net-fs/shfs-0.35-r5 to / * >>> SetUID: [chmod go-r] /usr/bin/shfsmount ... [ ok ] * >>> SetUID: [chmod go-r] /usr/bin/shfsumount ... [ ok ] --- /sbin/ >>> /sbin/mount.shfs -> /usr/bin/shfsmount --- /usr/ --- /usr/bin/ >>> /usr/bin/shfsmount >>> /usr/bin/shfsumount --- /usr/share/ --- /usr/share/man/ --- /usr/share/man/man8/ >>> /usr/share/man/man8/shfsumount.8.bz2 >>> /usr/share/man/man8/shfsmount.8.bz2 --- /lib/ --- /lib/modules/ --- /lib/modules/2.6.27-gentoo-r2/ --- /lib/modules/2.6.27-gentoo-r2/misc/ --- /lib/modules/2.6.27-gentoo-r2/misc/fs/ >>> /lib/modules/2.6.27-gentoo-r2/misc/fs/shfs.ko >>> Safely unmerging already-installed instance... No package files given... Grabbing a set. --- replaced obj /usr/share/man/man8/shfsumount.8.bz2 --- replaced obj /usr/share/man/man8/shfsmount.8.bz2 --- replaced dir /usr/share/man/man8 --- replaced dir /usr/share/man --- replaced dir /usr/share --- replaced obj /usr/bin/shfsumount --- replaced obj /usr/bin/shfsmount --- replaced dir /usr/bin --- replaced dir /usr --- replaced sym /sbin/mount.shfs --- replaced dir /sbin --- replaced obj /lib/modules/2.6.27-gentoo-r2/misc/fs/shfs.ko --- replaced dir /lib/modules/2.6.27-gentoo-r2/misc/fs --- replaced dir /lib/modules/2.6.27-gentoo-r2/misc --- replaced dir /lib/modules/2.6.27-gentoo-r2 --- replaced dir /lib/modules --- replaced dir /lib * Removing net-fs/shfs-0.35-r5 from moduledb. >>> Original instance of package unmerged safely. * Updating module dependencies for 2.6.27-gentoo-r2 ... [ ok ] * Adding module to moduledb. * Use either 'shfsmount' or 'mount -t shfs' to mount remote * filesystems into your local filesystem. * * Note the following: * * 1. The shfs kernel module has to be loaded first before you can * start mounting filesystems. * Try: 'modprobe shfs' as root. * * 2. When mouting, you must enter the absolute path of the remote * filesystem without any special characters such as tilde (~), * for example as they will not be evaluated. >>> net-fs/shfs-0.35-r5 merged. >>> No packages selected for removal by clean >>> Auto-cleaning packages... >>> No outdated packages were found on your system. I'm able to mount a remote directory and cat to a file, unfortunately I can't read (cat) the file!! The permissions are rw-r--r--, UID and GID are from my local user. What could be wrong? Maybe I should file a new bug on this issue?
shfs-0.35-r5 at a linux-2.6.28-rc6 fails for me with: ... [ebuild U ] net-fs/shfs-0.35-r5 [0.35-r4] USE="X doc* -amd" 0 kB [?=>1] ... make[1]: Entering directory `/usr/src_vilm/linux-2.6.28-rc6' CC [M] /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.o In file included from /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:24: /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/shfs_fs.h:82: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/shfs_fs.h:83: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/shfs_fs.h:84: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/shfs_fs.h:85: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token In file included from /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:26: /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/shfs_debug.h:22: error: expected declaration specifiers or '...' before 'kmem_cache_t' /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/shfs_debug.h: In function '__kmem_malloc_debug': /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/shfs_debug.h:25: error: 'cache' undeclared (first use in this function) /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/shfs_debug.h:25: error: (Each undeclared identifier is reported only once /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/shfs_debug.h:25: error: for each function it appears in.) /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/shfs_debug.h: At top level: /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/shfs_debug.h:35: error: expected declaration specifiers or '...' before 'kmem_cache_t' /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/shfs_debug.h: In function '__kmem_free_debug': /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/shfs_debug.h:41: error: 'cache' undeclared (first use in this function) /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c: In function 'shfs_invalidate_dircache_entries': /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:71: error: 'struct dentry' has no member named 'd_child' /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:71: warning: type defaults to 'int' in declaration of '__mptr' /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:71: warning: initialization from incompatible pointer type /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:71: error: 'struct dentry' has no member named 'd_child' /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c: In function 'shfs_dget_fpos': /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:104: error: 'struct dentry' has no member named 'd_child' /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:104: warning: type defaults to 'int' in declaration of '__mptr' /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:104: warning: initialization from incompatible pointer type /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:104: error: 'struct dentry' has no member named 'd_child' make[2]: *** [/var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.o] Error 1 make[1]: *** [_module_/var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6] Error 2 make[1]: Leaving directory `/usr/src_vilm/linux-2.6.28-rc6' make: *** [default] Error 2
It also fails for me at linux-2.6.27.7 with: ... [ebuild U ] net-fs/shfs-0.35-r5 [0.35-r4] USE="X doc* -amd" 0 kB [?=>1] ... * Found kernel object directory: * /lib/modules/2.6.27.7/build * Found sources for kernel version: * 2.6.27.7 ... make[1]: Entering directory `/usr/src_grizzly/linux-2.6.27.7' CC [M] /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.o In file included from /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:24: /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/shfs_fs.h:82: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/shfs_fs.h:83: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/shfs_fs.h:84: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/shfs_fs.h:85: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token In file included from /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:26: /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/shfs_debug.h:22: error: expected declaration specifiers or '...' before 'kmem_cache_t' /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/shfs_debug.h: In function '__kmem_malloc_debug': /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/shfs_debug.h:25: error: 'cache' undeclared (first use in this function) /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/shfs_debug.h:25: error: (Each undeclared identifier is reported only once /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/shfs_debug.h:25: error: for each function it appears in.) /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/shfs_debug.h: At top level: /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/shfs_debug.h:35: error: expected declaration specifiers or '...' before 'kmem_cache_t' /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/shfs_debug.h: In function '__kmem_free_debug': /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/shfs_debug.h:41: error: 'cache' undeclared (first use in this function) /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c: In function 'shfs_invalidate_dircache_entries': /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:71: error: 'struct dentry' has no member named 'd_child' /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:71: warning: type defaults to 'int' in declaration of '__mptr' /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:71: warning: initialization from incompatible pointer type /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:71: error: 'struct dentry' has no member named 'd_child' /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c: In function 'shfs_dget_fpos': /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:104: error: 'struct dentry' has no member named 'd_child' /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:104: warning: type defaults to 'int' in declaration of '__mptr' /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:104: warning: initialization from incompatible pointer type /var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.c:104: error: 'struct dentry' has no member named 'd_child' make[2]: *** [/var/tmp/portage/net-fs/shfs-0.35-r5/work/shfs-0.35/shfs/Linux-2.6/dcache.o] Error 1
As this seems to be dead upstream, has seen it's last release back in 2004, again is broken for >=2.6.28 and other distributions already dropped it - i'm in favor letting treecleaners do their job. net-fs: please advise.
Package removed.