Cannot built cross compilation toolchain



  • Hi Everyone,

    I am following the instructions to build the cross compiler toolchain here, on Ubuntu 18.04 LTS.

    After running make menuconfig and creating the .config file, i ran make to build the toolchain.

    However, i am unable to build the toolchain. Is 18.04 LTS supported ?

    Thanks,
    Rahul



  • So what's the error message you're getting? I was doing this on Xubuntu 17 and everything was still fine.



  • This is what I get when I use

    make -j1 V=s

    ./../misc/create_inode.c: In function 'set_inode_xattr':
    ./../misc/create_inode.c:136:9: warning: implicit declaration of function 'llistxattr'; did you mean 'lstat64'? [-Wimplicit-function-declaration]
      size = llistxattr(filename, NULL, 0);
             ^~~~~~~~~~
             lstat64
    ./../misc/create_inode.c:172:16: warning: implicit declaration of function 'lgetxattr'; did you mean 'getdate_r'? [-Wimplicit-function-declaration]
       value_size = lgetxattr(filename, name, NULL, 0);
                    ^~~~~~~~~
                    getdate_r
    ./../misc/create_inode.c: At top level:
    ./../misc/create_inode.c:395:18: error: conflicting types for 'copy_file_range'
     static errcode_t copy_file_range(ext2_filsys fs, int fd, ext2_file_t e2_file,
                      ^~~~~~~~~~~~~~~
    In file included from ./../misc/create_inode.c:19:0:
    /usr/include/unistd.h:1110:9: note: previous declaration of 'copy_file_range' was here
     ssize_t copy_file_range (int __infd, __off64_t *__pinoff,
             ^~~~~~~~~~~~~~~
    Makefile:417: recipe for target 'create_inode.o' failed
    make[6]: *** [create_inode.o] Error 1
    make[6]: Leaving directory '/home/rahulrav/Workspace/OnionIoT/source/build_dir/host/e2fsprogs-1.43.3/debugfs'
    Makefile:404: recipe for target 'all-progs-recursive' failed
    make[5]: *** [all-progs-recursive] Error 1
    make[5]: Leaving directory '/home/rahulrav/Workspace/OnionIoT/source/build_dir/host/e2fsprogs-1.43.3'
    Makefile:339: recipe for target 'all' failed
    make[4]: *** [all] Error 2
    make[4]: Leaving directory '/home/rahulrav/Workspace/OnionIoT/source/build_dir/host/e2fsprogs-1.43.3'
    Makefile:49: recipe for target '/home/rahulrav/Workspace/OnionIoT/source/build_dir/host/e2fsprogs-1.43.3/.built' failed
    make[3]: *** [/home/rahulrav/Workspace/OnionIoT/source/build_dir/host/e2fsprogs-1.43.3/.built] Error 2
    make[3]: Leaving directory '/home/rahulrav/Workspace/OnionIoT/source/tools/e2fsprogs'
    tools/Makefile:147: recipe for target 'tools/e2fsprogs/compile' failed
    make[2]: *** [tools/e2fsprogs/compile] Error 2
    make[2]: Leaving directory '/home/rahulrav/Workspace/OnionIoT/source'
    tools/Makefile:145: recipe for target '/home/rahulrav/Workspace/OnionIoT/source/staging_dir/target-mipsel_24kc_musl-1.1.16/stamp/.tools_install_yynyyyyynyyyyynyynnyyyynyyyyyyyyyyyyyyynyynynnyyynnny' failed
    make[1]: *** [/home/rahulrav/Workspace/OnionIoT/source/staging_dir/target-mipsel_24kc_musl-1.1.16/stamp/.tools_install_yynyyyyynyyyyynyynnyyyynyyyyyyyyyyyyyyynyynynnyyynnny] Error 2
    make[1]: Leaving directory '/home/rahulrav/Workspace/OnionIoT/source'
    /home/rahulrav/Workspace/OnionIoT/source/include/toplevel.mk:198: recipe for target 'world' failed
    make: *** [world] Error 2
    

    Any ideas on how I can fix this ?

    Thanks,
    Rahul



  • I may need this patch. Keep you folks posted. šŸ™‚



  • Scratch that. The actual path for LEDE 17.01 branch is here.

    This helps me work around the problem. Hope this is useful to someone else as well.

    Thanks for listening.

    Rahul



  • Hi @Rahul-Ravikumar, I'm experiencing the same problem. How have you solved? Have you just applied the patch or have you used the openwrt branch instead of the reference? In the latter case, does the onion feeds update script still work?
    Thank you



  • To resolve this issue, you can apply the patch from original LEDE project or use ubuntu 16.04 to build your image but other issues are comming if you want to customize your image ...



  • Same issue here. Can you provide me how to apply this patch? Ubuntu 18.04

    Is it only problem? Or should i use docker/vbox just for crosscompile?



  • Try this on VirtualBox: (already compiled toolchain)
    https://community.onion.io/topic/2115/onion-omega-2-cross-compiler/2

    But if you want to add some libraries, there could be some difficulties to re-make it, for example I had to download files manually to dl directory, because they werent downloading through make command.



  • Hi All,
    I had same problem on Fedora 28, as build machine. After some research i simply decide to use more fresh e2fsprogs where conflict is solved. In same time i use version enough close to default one. I.e. i use 1.43.8 instead of 1.43.3
    Take a look at diff files
    e2fsprogs-tools.diff
    e2fsprogs-utils.diff



Looks like your connection to Community was lost, please wait while we try to reconnect.