Emerging zfs-fuse results in a failed compile. Reproducible: Always These are the packages that would be merged, in reverse order: Calculating dependencies... done! [ebuild N ] sys-fs/zfs-fuse-0.5.0 USE="-debug -doc" 0 kB Total: 1 package (1 new), Size of downloads: 0 kB Would you like to merge these packages? [Yes/No] y >>> Verifying ebuild manifests >>> Emerging (1 of 1) sys-fs/zfs-fuse-0.5.0 * zfs-fuse-0.5.0.tar.bz2 RMD160 SHA1 SHA256 size ;-) ... [ ok ] * checking ebuild checksums ;-) ... [ ok ] * checking auxfile checksums ;-) ... [ ok ] * checking miscfile checksums ;-) ... [ ok ] >>> Unpacking source... >>> Unpacking zfs-fuse-0.5.0.tar.bz2 to /var/tmp/portage/sys-fs/zfs-fuse-0.5.0/work * Applying fix_zdb_path.patch ... [ ok ] * Applying fix_zfs-fuse_path.patch ... [ ok ] * Applying fix_ztest_path.patch ... [ ok ] >>> Source unpacked in /var/tmp/portage/sys-fs/zfs-fuse-0.5.0/work >>> Compiling source in /var/tmp/portage/sys-fs/zfs-fuse-0.5.0/work/zfs-fuse-0.5.0/src ... scons: Reading SConscript files ... scons: done reading SConscript files. scons: Building targets ... gcc -o cmd/zdb/ptrace.o -c -pipe -Wall -Werror -std=c99 -Wno-switch -Wno-unused -Wno-missing-braces -Wno-parentheses -Wno-uninitialized -fno-strict-aliasing -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_REENTRANT -DTEXT_DOMAIN=\"zfs-fuse\" -DLINUX_AIO -ggdb -O2 -Ilib/libavl/include -Ilib/libnvpair/include -Ilib/libumem/include -Ilib/libzfscommon/include -Ilib/libzpool/include -Ilib/libsolcompat/include -Ilib/libzfs/include cmd/zdb/ptrace.c gcc -o cmd/zdb/zdb.o -c -pipe -Wall -Werror -std=c99 -Wno-switch -Wno-unused -Wno-missing-braces -Wno-parentheses -Wno-uninitialized -fno-strict-aliasing -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_REENTRANT -DTEXT_DOMAIN=\"zfs-fuse\" -DLINUX_AIO -ggdb -O2 -Ilib/libavl/include -Ilib/libnvpair/include -Ilib/libumem/include -Ilib/libzfscommon/include -Ilib/libzpool/include -Ilib/libsolcompat/include -Ilib/libzfs/include cmd/zdb/zdb.c cc1: warnings being treated as errors cmd/zdb/zdb.c: In function 'zdb_dump_block_raw': cmd/zdb/zdb.c:2007: error: ignoring return value of 'write', declared with attribute warn_unused_result scons: *** [cmd/zdb/zdb.o] Error 1 scons: building terminated because of errors. * * ERROR: sys-fs/zfs-fuse-0.5.0 failed. * Call stack: * ebuild.sh, line 49: Called src_compile * environment, line 2267: Called die * The specific snippet of code: * scons || die "Make failed" * The die message: * Make failed * * 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/sys-fs/zfs-fuse-0.5.0/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/sys-fs/zfs-fuse-0.5.0/temp/environment'. * >>> Failed to emerge sys-fs/zfs-fuse-0.5.0, Log file: >>> '/var/tmp/portage/sys-fs/zfs-fuse-0.5.0/temp/build.log'
Just to make sure: -Werror comes from the package, not your CFLAGS, right ?
It's not set in my make.conf, and it's not in the environment when I build: bandicoot2 ~ # env | grep -i error bandicoot2 ~ # echo $CFLAGS bandicoot2 ~ # emerge -v --tree -a zfs-fuse 8<--- failed build bandicoot2 ~ # grep -i error /etc/make.conf PORTAGE_ELOG_CLASSES="warn error log" bandicoot2 ~ # grep FLA /etc/make.conf CFLAGS="-march=k8 -O3 -pipe" CXXFLAGS="-O3 -pipe" bandicoot2 ~ # cd /var/tmp/portage/sys-fs/zfs-fuse-0.5.0/work/zfs-fuse-0.5.0/src bandicoot2 src # grep -rl Werror . ./SConstruct bandicoot2 src # grep Werror SConstruct env['LINKFLAGS'] = Split('-pipe -Wall -Werror') env['CCFLAGS'] = Split('-pipe -Wall -Werror -std=c99 -Wno-switch -Wno-unused -Wno-missing-braces -Wno-parentheses -Wno-uninitialized -fno-strict-aliasing -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_REENTRANT -DTEXT_DOMAIN=\\"zfs-fuse\\" -DLINUX_AIO') So -Werror seems it's coming from the package... or do I interpret something wrong?
Just as a test, I started the emerge stopping the build with ctrl-z before the compilation started. I edited the SConstruct file and removed the -Werror from both LINKFLAGS and CCFLAGS (ok, I know this is not really the right way, but as a quick test, it's sufficient for me), then allowed the build to continue. It ran through without problems. bandicoot2 ~ # emerge -v --tree -a sys-fs/zfs-fuse * IMPORTANT: 3 news items need reading for repository 'gentoo'. * Use eselect news to read news items. These are the packages that would be merged, in reverse order: Calculating dependencies... done! [ebuild N ] sys-fs/zfs-fuse-0.5.0 USE="-debug -doc" 0 kB Total: 1 package (1 new), Size of downloads: 0 kB Would you like to merge these packages? [Yes/No] y >>> Verifying ebuild manifests >>> Emerging (1 of 1) sys-fs/zfs-fuse-0.5.0 * zfs-fuse-0.5.0.tar.bz2 RMD160 SHA1 SHA256 size ;-) ... [ ok ] * checking ebuild checksums ;-) ... [ ok ] * checking auxfile checksums ;-) ... [ ok ] * checking miscfile checksums ;-) ... [ ok ] >>> Unpacking source... >>> Unpacking zfs-fuse-0.5.0.tar.bz2 to /var/tmp/portage/sys-fs/zfs-fuse-0.5.0/work * Applying fix_zdb_path.patch ... [ ok ] * Applying fix_zfs-fuse_path.patch ... [ ok ] * Applying fix_ztest_path.patch ... [ ok ] >>> Source unpacked in /var/tmp/portage/sys-fs/zfs-fuse-0.5.0/work ^Z [2]+ Stopped emerge -v --tree -a sys-fs/zfs-fuse bandicoot2 ~ # vim /var/tmp/portage/sys-fs/zfs-fuse-0.5.0/work/zfs-fuse-0.5.0/src/SConstruct bandicoot2 ~ # fg emerge -v --tree -a sys-fs/zfs-fuse >>> Compiling source in /var/tmp/portage/sys-fs/zfs-fuse-0.5.0/work/zfs-fuse-0.5.0/src ... scons: Reading SConscript files ... scons: done reading SConscript files. scons: Building targets ... 8<--- successful build and install Now there is a plethora of other problems, such as error messages, a zpool that I can't mount, and so on, however I will investigate and report these to the developers of zfs-fuse.
*** This bug has been marked as a duplicate of bug 260941 ***