Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

compiling in ARMv7h fails



  • qt 5.11 , arch linux
    my app builds fine on 64 bit architer both x86 and arm64 .but it is failling in amrv7h .i really can't find the cause .here is the compile output.

    ==> Starting build()...
    qemu: Unsupported syscall: 397
    Info: creating stash file /home/manjaro/corebox/src/build/.qmake.stash
    cd library/ && ( test -e Makefile || /usr/sbin/qmake-qt5 -o Makefile /home/manjaro/corebox/src/corebox-master/library/library.pro PREFIX=/usr ) && /usr/sbin/make -f Makefile 
    qemu: Unsupported syscall: 397
    make[1]: Entering directory '/home/manjaro/corebox/src/build/library'
    cd libcterminal/ && ( test -e Makefile || /usr/sbin/qmake-qt5 -o Makefile /home/manjaro/corebox/src/corebox-master/library/libcterminal/libcterminal.pro PREFIX=/usr ) && /usr/sbin/make -f Makefile 
    cd libcsys/ && ( test -e Makefile || /usr/sbin/qmake-qt5 -o Makefile /home/manjaro/corebox/src/corebox-master/library/libcsys/libcsys.pro PREFIX=/usr ) && /usr/sbin/make -f Makefile 
    cd libcarchiver/ && ( test -e Makefile || /usr/sbin/qmake-qt5 -o Makefile /home/manjaro/corebox/src/corebox-master/library/libcarchiver/libcarchiver.pro PREFIX=/usr ) && /usr/sbin/make -f Makefile 
    cd libcpdf/ && ( test -e Makefile || /usr/sbin/qmake-qt5 -o Makefile /home/manjaro/corebox/src/corebox-master/library/libcpdf/libcpdf.pro PREFIX=/usr ) && /usr/sbin/make -f Makefile 
    qemu: Unsupported syscall: 397
    qemu: Unsupported syscall: 397
    qemu: Unsupported syscall: 397
    qemu: Unsupported syscall: 397
    Project ERROR: Unknown module(s) in QT: core gui widgets
    Project ERROR: Unknown module(s) in QT: core
    make[1]: *** [Makefile:98: sub-libcterminal-make_first] Error 3
    make[1]: *** Waiting for unfinished jobs....
    make[1]: *** [Makefile:73: sub-libcarchiver-make_first] Error 3
    Project ERROR: Unknown module(s) in QT: core gui widgets webengine webenginecore webenginewidgets webchannel
    make[1]: *** [Makefile:48: sub-libcpdf-make_first] Error 3
    Project ERROR: Unknown module(s) in QT: core gui widgets network charts concurrent
    make[1]: *** [Makefile:123: sub-libcsys-make_first] Error 3
    make[1]: Leaving directory '/home/manjaro/corebox/src/build/library'
    make: *** [Makefile:71: sub-library-make_first] Error 2
    ==> ERROR: A failure occurred in build().
        Aborting...
    

    NT : I am creating an armv7h chroot and using qemu to chroot into it and compile.
    what is the cause?



  • @saber said in compiling in ARMv7h fails:

    my app builds fine on 64 bit architer both x86 and arm64 .but it is failling in amrv7h

    Could you please describe your environment?
    Are you cross-compiling your application?
    From your compile ouput I can see something that could be a clue:

    qemu: Unsupported syscall: 397
    

    What are you using Qemu for?



  • i am Linux 64bit .i am not cross-compiling.
    it is build by a distro maintainer.he use the qemu for building .it will take forever to build it in actual architecter.
    he is facing this issue.

    and i am not an expert on qemu or arm.
    he is facing this issue when he build my app on armv7h.on arm64 it builds fine.
    also i am not finding any like qemu: Unsupported syscall: 397.


  • Qt Champions 2019

    @saber said in compiling in ARMv7h fails:

    Project ERROR: Unknown module(s) in QT: core gui widgets webengine webenginecore webenginewidgets webchannel

    The cross compiled Qt for armv7h is missing the modules mentioned in this error message...
    "make[1]: Leaving directory '/home/manjaro/corebox/src/build/library'" - also, you should NOT build from the source code directory! Use out of source builds. Else you will end up with build artefacts from previous builds (for other platforms) which will cause troubles.



  • @jsulm
    we are trying to build it in ARCH .and the qt package's are from arch-arm.
    if the problem in packages then we have nothing to do .
    nd as you told we are not building it in source directory . we are making a separate folder , place build files in the build folder and keep the source files separated.



  • it was solved by adding this lines.

    	#ifdef __LP64__
    		off_t offset;
    	#else
    		la_int64_t offset;
    	#endif
    
    

  • Lifetime Qt Champion

    Hi,

    Where exactly did you add these lines ?


Log in to reply