Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
ERROR: sys-boot/yaboot-1.3.17-r2::gentoo failed-`fallocate64
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Portage & Programming
View previous topic :: View next topic  
Author Message
toofied
n00b
n00b


Joined: 26 Oct 2016
Posts: 27

PostPosted: Tue Dec 13, 2016 12:09 am    Post subject: ERROR: sys-boot/yaboot-1.3.17-r2::gentoo failed-`fallocate64 Reply with quote

Attempting to install yaboot on PPC. So far I haven't experienced any problems following the handbook, then I got this bug.
Code:

---snip---
fs_reiserfs.o second/fs_reiserfs.c
In file included from ./include/byteorder.h:4:0,
                 from ./include/reiserfs/reiserfs.h:3,
                 from second/fs_reiserfs.c:33:
second/fs_reiserfs.c: In function ‘block_read’:
./include/swab.h:12:5: warning: operation on ‘*journal_table’ may be undefined [-Wsequence-point]
   (((__u32)(x) & (__u32)0x00ff0000UL) >>  8) | \
     ^
./include/byteorder.h:8:26: note: in expansion of macro ‘swab32’
 # define le32_to_cpu(x)  swab32((x))
                          ^
second/fs_reiserfs.c:221:17: note: in expansion of macro ‘le32_to_cpu’
         j_len = le32_to_cpu((*journal_table)++);
                 ^
./include/swab.h:12:5: warning: operation on ‘*journal_table’ may be undefined [-Wsequence-point]
   (((__u32)(x) & (__u32)0x00ff0000UL) >>  8) | \
     ^
./include/byteorder.h:8:26: note: in expansion of macro ‘swab32’
 # define le32_to_cpu(x)  swab32((x))
                          ^
second/fs_reiserfs.c:221:17: note: in expansion of macro ‘le32_to_cpu’
         j_len = le32_to_cpu((*journal_table)++);
                 ^
./include/swab.h:12:5: warning: operation on ‘*journal_table’ may be undefined [-Wsequence-point]
   (((__u32)(x) & (__u32)0x00ff0000UL) >>  8) | \
     ^
./include/byteorder.h:8:26: note: in expansion of macro ‘swab32’
 # define le32_to_cpu(x)  swab32((x))
                          ^
second/fs_reiserfs.c:221:17: note: in expansion of macro ‘le32_to_cpu’
         j_len = le32_to_cpu((*journal_table)++);
                 ^
second/fs_reiserfs.c:224:38: warning: operation on ‘journal_table’ may be undefined [-Wsequence-point]
       if ( le32_to_cpu(*journal_table++) == blockNr )
                                      ^
./include/swab.h:12:13: note: in definition of macro ‘swab32’
   (((__u32)(x) & (__u32)0x00ff0000UL) >>  8) | \
             ^
second/fs_reiserfs.c:224:12: note: in expansion of macro ‘le32_to_cpu’
       if ( le32_to_cpu(*journal_table++) == blockNr )
            ^
second/fs_reiserfs.c:224:38: warning: operation on ‘journal_table’ may be undefined [-Wsequence-point]
       if ( le32_to_cpu(*journal_table++) == blockNr )
                                      ^
./include/swab.h:12:13: note: in definition of macro ‘swab32’
   (((__u32)(x) & (__u32)0x00ff0000UL) >>  8) | \
             ^
second/fs_reiserfs.c:224:12: note: in expansion of macro ‘le32_to_cpu’
       if ( le32_to_cpu(*journal_table++) == blockNr )
            ^
second/fs_reiserfs.c:224:38: warning: operation on ‘journal_table’ may be undefined [-Wsequence-point]
       if ( le32_to_cpu(*journal_table++) == blockNr )
                                      ^
./include/swab.h:12:13: note: in definition of macro ‘swab32’
   (((__u32)(x) & (__u32)0x00ff0000UL) >>  8) | \
             ^
second/fs_reiserfs.c:224:12: note: in expansion of macro ‘le32_to_cpu’
       if ( le32_to_cpu(*journal_table++) == blockNr )
            ^
second/fs_reiserfs.c:243:42: warning: operation on ‘i’ may be undefined [-Wsequence-point]
       if ( le32_to_cpu(desc.j_realblock[i++]) == blockNr )
                                          ^
./include/swab.h:12:13: note: in definition of macro ‘swab32’
   (((__u32)(x) & (__u32)0x00ff0000UL) >>  8) | \
             ^
second/fs_reiserfs.c:243:12: note: in expansion of macro ‘le32_to_cpu’
       if ( le32_to_cpu(desc.j_realblock[i++]) == blockNr )
            ^
second/fs_reiserfs.c:243:42: warning: operation on ‘i’ may be undefined [-Wsequence-point]
       if ( le32_to_cpu(desc.j_realblock[i++]) == blockNr )
                                          ^
./include/swab.h:12:13: note: in definition of macro ‘swab32’
   (((__u32)(x) & (__u32)0x00ff0000UL) >>  8) | \
             ^
second/fs_reiserfs.c:243:12: note: in expansion of macro ‘le32_to_cpu’
       if ( le32_to_cpu(desc.j_realblock[i++]) == blockNr )
            ^
second/fs_reiserfs.c:243:42: warning: operation on ‘i’ may be undefined [-Wsequence-point]
       if ( le32_to_cpu(desc.j_realblock[i++]) == blockNr )
                                          ^
./include/swab.h:12:13: note: in definition of macro ‘swab32’
   (((__u32)(x) & (__u32)0x00ff0000UL) >>  8) | \
             ^
second/fs_reiserfs.c:243:12: note: in expansion of macro ‘le32_to_cpu’
       if ( le32_to_cpu(desc.j_realblock[i++]) == blockNr )
            ^
second/fs_reiserfs.c:255:42: warning: operation on ‘i’ may be undefined [-Wsequence-point]
     if ( le32_to_cpu(commit.j_realblock[i++ - JOURNAL_TRANS_HALF]) == blockNr )
                                          ^
./include/swab.h:12:13: note: in definition of macro ‘swab32’
   (((__u32)(x) & (__u32)0x00ff0000UL) >>  8) | \
             ^
second/fs_reiserfs.c:255:10: note: in expansion of macro ‘le32_to_cpu’
     if ( le32_to_cpu(commit.j_realblock[i++ - JOURNAL_TRANS_HALF]) == blockNr )
          ^
second/fs_reiserfs.c:255:42: warning: operation on ‘i’ may be undefined [-Wsequence-point]
     if ( le32_to_cpu(commit.j_realblock[i++ - JOURNAL_TRANS_HALF]) == blockNr )
                                          ^
./include/swab.h:12:13: note: in definition of macro ‘swab32’
   (((__u32)(x) & (__u32)0x00ff0000UL) >>  8) | \
             ^
second/fs_reiserfs.c:255:10: note: in expansion of macro ‘le32_to_cpu’
     if ( le32_to_cpu(commit.j_realblock[i++ - JOURNAL_TRANS_HALF]) == blockNr )
          ^
second/fs_reiserfs.c:255:42: warning: operation on ‘i’ may be undefined [-Wsequence-point]
     if ( le32_to_cpu(commit.j_realblock[i++ - JOURNAL_TRANS_HALF]) == blockNr )
                                          ^
./include/swab.h:12:13: note: in definition of macro ‘swab32’
   (((__u32)(x) & (__u32)0x00ff0000UL) >>  8) | \
             ^
second/fs_reiserfs.c:255:10: note: in expansion of macro ‘le32_to_cpu’
     if ( le32_to_cpu(commit.j_realblock[i++ - JOURNAL_TRANS_HALF]) == blockNr )
          ^
powerpc-unknown-linux-gnu-gcc -Os  -fno-stack-protector  -Wall  -Wno-error -fdiagnostics-show-option -o util/addnote util/addnote.c
powerpc-unknown-linux-gnu-ld -Ttext 0x100000 -Bstatic -melf32ppclinux second/crt0.o second/yaboot.o second/cache.o second/prom.o second/file.o second/partition.o second/fs.o second/cfg.o second/setjmp.o second/cmdline.o second/fs_of.o second/fs_ext2.o second/fs_iso.o second/fs_swap.o second/iso_util.o lib/nonstd.o lib/nosys.o lib/string.o lib/strtol.o lib/vsprintf.o lib/ctype.o lib/malloc.o lib/strstr.o lib/ssp.o second/md5.o second/fs_xfs.o second/fs_reiserfs.o -lext2fs `powerpc-unknown-linux-gnu-gcc -m32 -print-libgcc-file-name` -o second/yaboot
/usr/lib/libext2fs.a(mkjournal.o): In function `ext2fs_add_journal_device':
(.text+0x61c): undefined reference to `__xstat'
/usr/lib/libext2fs.a(mkjournal.o): In function `ext2fs_add_journal_inode2':
(.text+0x95c): undefined reference to `__strcat_chk'
/usr/lib/libext2fs.a(mkjournal.o): In function `ext2fs_add_journal_inode2':
(.text+0xc54): undefined reference to `__fxstat'
/usr/lib/libext2fs.a(blkmap64_rb.o): In function `rb_insert_extent':
(.text+0x122c): undefined reference to `abort'
/usr/lib/libext2fs.a(ismounted.o): In function `is_swap_device':
(.text+0x64): undefined reference to `__xstat'
/usr/lib/libext2fs.a(ismounted.o): In function `is_swap_device':
(.text+0x8c): undefined reference to `fopen'
/usr/lib/libext2fs.a(ismounted.o): In function `is_swap_device':
(.text+0xac): undefined reference to `fgets'
/usr/lib/libext2fs.a(ismounted.o): In function `is_swap_device':
(.text+0x130): undefined reference to `fclose'
/usr/lib/libext2fs.a(ismounted.o): In function `is_swap_device':
(.text+0x18c): undefined reference to `__xstat'
/usr/lib/libext2fs.a(ismounted.o): In function `is_swap_device':
(.text+0x1cc): undefined reference to `fgets'
/usr/lib/libext2fs.a(ismounted.o): In function `check_mntent_file':
(.text+0x27c): undefined reference to `setmntent'
/usr/lib/libext2fs.a(ismounted.o): In function `check_mntent_file':
(.text+0x298): undefined reference to `__xstat'
/usr/lib/libext2fs.a(ismounted.o): In function `check_mntent_file':
(.text+0x2d0): undefined reference to `getmntent'
/usr/lib/libext2fs.a(ismounted.o): In function `check_mntent_file':
(.text+0x30c): undefined reference to `__xstat'
/usr/lib/libext2fs.a(ismounted.o): In function `check_mntent_file':
(.text+0x35c): undefined reference to `__xstat'
/usr/lib/libext2fs.a(ismounted.o): In function `check_mntent_file':
(.text+0x384): undefined reference to `endmntent'
/usr/lib/libext2fs.a(ismounted.o): In function `check_mntent_file':
(.text+0x4d0): undefined reference to `__xstat'
/usr/lib/libext2fs.a(ismounted.o): In function `check_mntent_file':
(.text+0x570): undefined reference to `hasmntopt'
/usr/lib/libext2fs.a(ismounted.o): In function `check_mntent_file':
(.text+0x5ec): undefined reference to `unlink'
/usr/lib/libext2fs.a(ismounted.o): In function `ext2fs_check_mount_point':
(.text+0x740): undefined reference to `__xstat'
/usr/lib/libext2fs.a(unix_io.o): In function `unix_cache_readahead':
(.text+0x200): undefined reference to `posix_fadvise64'
/usr/lib/libext2fs.a(unix_io.o): In function `unix_open_channel':
(.text+0xf74): undefined reference to `setrlimit64'
/usr/lib/libext2fs.a(unix_io.o): In function `unix_open_channel':
(.text+0xf80): undefined reference to `getrlimit64'
/usr/lib/libext2fs.a(unix_io.o): In function `unix_open_channel':
(.text+0xfa8): undefined reference to `setrlimit64'
/usr/lib/libext2fs.a(unix_io.o): In function `unix_zeroout':
(.text+0x12dc): undefined reference to `ftruncate64'
/usr/lib/libext2fs.a(unix_io.o): In function `unix_zeroout':
(.text+0x1338): undefined reference to `fallocate64'
/usr/lib/libext2fs.a(unix_io.o): In function `unix_zeroout':
(.text+0x1394): undefined reference to `fallocate64'
/usr/lib/libext2fs.a(unix_io.o): In function `unix_discard':
(.text+0x1594): undefined reference to `fallocate64'
Makefile:112: recipe for target 'yaboot' failed
make: *** [yaboot] Error 1
 * ERROR: sys-boot/yaboot-1.3.17-r2::gentoo failed (compile phase):
 *   emake failed
 *
 * If you need support, post the output of `emerge --info '=sys-boot/yaboot-1.3.17-r2::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=sys-boot/yaboot-1.3.17-r2::gentoo'`.
 * The complete build log is located at '/var/tmp/portage/sys-boot/yaboot-1.3.17-r2/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/sys-boot/yaboot-1.3.17-r2/temp/environment'.
 * Working directory: '/var/tmp/portage/sys-boot/yaboot-1.3.17-r2/work/yaboot-1.3.17'
 * S: '/var/tmp/portage/sys-boot/yaboot-1.3.17-r2/work/yaboot-1.3.17'

>>> Failed to emerge sys-boot/yaboot-1.3.17-r2, Log file:

>>>  '/var/tmp/portage/sys-boot/yaboot-1.3.17-r2/temp/build.log'

 * Messages for package sys-boot/yaboot-1.3.17-r2:

 * ERROR: sys-boot/yaboot-1.3.17-r2::gentoo failed (compile phase):
 *   emake failed
 *
 * If you need support, post the output of `emerge --info '=sys-boot/yaboot-1.3.17-r2::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=sys-boot/yaboot-1.3.17-r2::gentoo'`.
 * The complete build log is located at '/var/tmp/portage/sys-boot/yaboot-1.3.17-r2/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/sys-boot/yaboot-1.3.17-r2/temp/environment'.
 * Working directory: '/var/tmp/portage/sys-boot/yaboot-1.3.17-r2/work/yaboot-1.3.17'
 * S: '/var/tmp/portage/sys-boot/yaboot-1.3.17-r2/work/yaboot-1.3.17'


Full log(s): https://dpaste.de/wLXc/raw
/var/tmp/portage/sys-boot/yaboot-1.3.17-r2/temp/environment -> http://termbin.com/5ip0

Bug seems related to (.text+0x1594): undefined reference to `fallocate64'. Also note that I am attempting to install Gentoo on an older PPC32 box, not PPC64.

Any ideas how to get this compiled?
Back to top
View user's profile Send private message
vwoodzell
n00b
n00b


Joined: 16 Dec 2016
Posts: 1

PostPosted: Fri Dec 16, 2016 6:27 am    Post subject: Reply with quote

I ran into the same problem, and worked around it by downgrading sys-fs/e2fsprogs to version 1.42.13.

I guess that newer versions added calls to functions that don't have stubs in yaboot. This seems like a recurring problem: see bug 527974.
Back to top
View user's profile Send private message
mrbrobro
n00b
n00b


Joined: 06 Feb 2017
Posts: 1

PostPosted: Mon Feb 06, 2017 3:52 am    Post subject: Reply with quote

Thanks for the tip about using sys-fs/e2fsprogs-1.42.13. I had the same problem but was able to get it to compile using that version.

For anyone else that encounters this:

The ebuild for sys-fs/e2fsprogs-1.42.13 wasn't in the portage tree anymore, so I got it and the associated patches under files for it from a point in the git repository when it was still there:
https://gitweb.gentoo.org/repo/gentoo.git/tree/sys-fs/e2fsprogs?id=158b6e620049ed2728440a0213978967bb0e26ce

yaboot requires that it be built with the static-libs use flag, so I added this to /etc/portage/package.use:
Code:
=sys-fs/e2fsprogs-1.42.13 static-libs


And built it:
Code:
ebuild e2fsprogs-1.42.13.ebuild manifest clean merge


Then I masked later versions by adding this to /etc/portage/package.mask:
Code:
>sys-fs/e2fsprogs-1.42.13


And then I was able to emerge sys-boot/yaboot.
Back to top
View user's profile Send private message
downsj
n00b
n00b


Joined: 24 Jun 2017
Posts: 19

PostPosted: Mon Jul 10, 2017 7:15 pm    Post subject: Reply with quote

Just use yaboot-static, as on PPC64.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Portage & Programming All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum