...however 1.34-r1 builds fine. I'm marking them -ia64 and ia64 respectively, until this problems is resolved. gcc -c -DLOCALEDIR=\"/usr/share/locale\" -DENABLE_HTREE=1 -DENABLE_SWAPFS=1 -DPACKAGE=\"e2fsprogs\" -DVERSION=\"1.35\" -DHAVE_INTTYPES_H_WITH_UINTMAX=1 -DHAVE_STDINT_H_WITH_UINTMAX=1 -DHAVE_UNSIGNED_LONG_LONG=1 -DSTDC_HEADERS=1 -DHAVE_ALLOCA_H=1 -DHAVE_ALLOCA=1 -DHAVE_UNISTD_H=1 -DHAVE_GETPAGESIZE=1 -DHAVE_MMAP=1 -DINTDIV0_RAISES_SIGFPE=0 -DHAVE_INTTYPES_H=1 -DHAVE_ARGZ_H=1 -DHAVE_LIMITS_H=1 -DHAVE_LOCALE_H=1 -DHAVE_NL_TYPES_H=1 -DHAVE_MALLOC_H=1 -DHAVE_STDDEF_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_UNISTD_H=1 -DHAVE_SYS_PARAM_H=1 -DHAVE_FEOF_UNLOCKED=1 -DHAVE_FGETS_UNLOCKED=1 -DHAVE_GETC_UNLOCKED=1 -DHAVE_GETCWD=1 -DHAVE_GETEGID=1 -DHAVE_GETEUID=1 -DHAVE_GETGID=1 -DHAVE_GETUID=1 -DHAVE_MEMPCPY=1 -DHAVE_MUNMAP=1 -DHAVE_PUTENV=1 -DHAVE_SETENV=1 -DHAVE_SETLOCALE=1 -DHAVE_STPCPY=1 -DHAVE_STRCASECMP=1 -DHAVE_STRDUP=1 -DHAVE_STRTOUL=1 -DHAVE_TSEARCH=1 -DHAVE___ARGZ_COUNT=1 -DHAVE___ARGZ_STRINGIFY=1 -DHAVE___ARGZ_NEXT=1 -DHAVE_ICONV=1 -DICONV_CONST= -DHAVE_LANGINFO_CODESET=1 -DHAVE_LC_MESSAGES=1 -DENABLE_NLS=1 -DHAVE_GETTEXT=1 -DHAVE_DCGETTEXT=1 -DHAVE_STDLIB_H=1 -DHAVE_UNISTD_H=1 -DHAVE_STDARG_H=1 -DHAVE_ERRNO_H=1 -DHAVE_MALLOC_H=1 -DHAVE_MNTENT_H=1 -DHAVE_PATHS_H=1 -DHAVE_DIRENT_H=1 -DHAVE_GETOPT_H=1 -DHAVE_SETJMP_H=1 -DHAVE_SIGNAL_H=1 -DHAVE_TERMIOS_H=1 -DHAVE_LINUX_FD_H=1 -DHAVE_LINUX_MAJOR_H=1 -DHAVE_SYS_IOCTL_H=1 -DHAVE_SYS_MOUNT_H=1 -DHAVE_SYS_SOCKET_H=1 -DHAVE_SYS_SYSMACROS_H=1 -DHAVE_SYS_TIME_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_WAIT_H=1 -DHAVE_SYS_RESOURCE_H=1 -DHAVE_NET_IF_H=1 -DHAVE_NETINET_IN_H=1 -DHAVE_VPRINTF=1 -DHAVE_RECLEN_DIRENT=1 -DHAVE_TYPE_SSIZE_T=1 -DHAVE_LSEEK64_PROTOTYPE=1 -DSIZEOF_SHORT=2 -DSIZEOF_INT=4 -DSIZEOF_LONG=8 -DSIZEOF_LONG_LONG=8 -DHAVE_INTTYPES_H=1 -Dintptr_t=long -DHAVE_GETRUSAGE=1 -DHAVE_LLSEEK=1 -DHAVE_LSEEK64=1 -DHAVE_OPEN64=1 -DHAVE_STRTOULL=1 -DHAVE_STRCASECMP=1 -DHAVE_SRANDOM=1 -DHAVE_FCHOWN=1 -DHAVE_MALLINFO=1 -DHAVE_FDATASYNC=1 -DHAVE_STRNLEN=1 -DHAVE_STRPTIME=1 -DHAVE_SYSCONF=1 -DHAVE_PATHCONF=1 -DHAVE_POSIX_MEMALIGN=1 -DHAVE_MEMALIGN=1 -DHAVE_VALLOC=1 -DHAVE_DLOPEN=1 -DHAVE_EXT2_IOCTLS=1 -O2 -pipe -DRESOURCE_TRACK -I../lib -I../lib rehash.c -o rehash.o gcc -o e2fsck.shared dict.o unix.o e2fsck.o super.o pass1.o pass1b.o pass2.o pass3.o pass4.o pass5.o journal.o swapfs.o badblocks.o util.o dirinfo.o dx_dirinfo.o ehandler.o problem.o message.o recovery.o region.o revoke.o ea_refcount.o rehash.o ../lib/libext2fs.so ../lib/libcom_err.so ../lib/libblkid.so ../lib/libuuid.so journal.o(.text+0x1b1): In function `getblk': : undefined reference to `journal_enable_debug' journal.o(.text+0x1d0): In function `getblk': : undefined reference to `journal_enable_debug' journal.o(.text+0x352): In function `ll_rw_block': : undefined reference to `journal_enable_debug' journal.o(.text+0x381): In function `ll_rw_block': : undefined reference to `journal_enable_debug' journal.o(.text+0x860): In function `brelse': : undefined reference to `journal_enable_debug' journal.o(.text+0x870): more undefined references to `journal_enable_debug' follow collect2: ld returned 1 exit status make[2]: *** [e2fsck.shared] Error 1 make[2]: Leaving directory `/var/tmp/portage/e2fsprogs-1.35/work/e2fsprogs-1.35/e2fsck' make[1]: *** [all-progs-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/e2fsprogs-1.35/work/e2fsprogs-1.35' make: *** [all] Error 2 !!! ERROR: sys-fs/e2fsprogs-1.35 failed. !!! Function src_compile, Line 44, Exitcode 2 !!! (no error message)
this still a problem ? i just built 1.35 with ia64 and ~ia64 i guess re-open if you can post the version of gcc/glibc that seems to trigger this problem
Bringing my little piece to the wall, I'd say: Yes it's still a problem ! :( I tried to compile e2fsprogs-1.35-r1 with the same result... But if I change the sources on the fly and comment out the lines calling the offending function, everything compiles well :) It would have been better to add some #IFDEF ... #ENDIF, than to just comment, but my wish was to compile... and it did ! Something I did not test but would be good to try: merge with the USE flag "debug" enabled... I'm quite sure compile fails only when "debug" is off ! Gentoo is a rock solid distro, and my Itanium server is a terrific playground ! Noone minds but me !!! Nevertheless, I had to tell it :) Last but not least: I think this bug should not be marked resolved/fixed, as it is NOT yet.
i never have USE=debug in my ia64 install ... what version of linux-headers do you use ? mine is all 2.6.x ...
after getting errors, unmerging linux-headers and emerging linux26-headers fixed build.
the problem is because of CONFIG_JBD_DEBUG name collisions in linux-2.4 headers we get this: /usr/include/linux/autoconf.h:#define CONFIG_JBD_DEBUG 1 in linux-26 headers we get this: /usr/include/linux/autoconf.h:#undef CONFIG_JBD_DEBUG internally, ext2fsprogs uses 'CONFIG_JBD_DEBUG' to control enabling debug in the app ... including the linux header files pollutes the environment in some files but not others thus leading to the error we see here
fixed the ebuild by running sed 's:CONFIG_JBD_DEBUG:__CONFIG_JBD_DEBUG__E2FS:g' on all the internal files builds fine for me now on ia64 with 2.4 and 2.6 headers