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

Cross compile Qt 5.5.0 for raspberry CM3 lite



  • Hi,

    I try to corss-compile Qt for raspberry like as find in this tutorial :

    https://visualgdb.com/tutorials/raspberry/qt/embedded/

    The "configure" step works but when I try to do "make"

    I have this error

    In file included from C:/Users/franck/Downloads/qt-everywhere-opensource-src-5.5.0/qtbase/src/3rdparty/pcre/sljit/sljitUtils.c:111:0,
                     from C:/Users/franck/Downloads/qt-everywhere-opensource-src-5.5.0/qtbase/src/3rdparty/pcre/sljit/sljitLir.c:240,
                     from C:/Users/franck/Downloads/qt-everywhere-opensource-src-5.5.0/qtbase/src/3rdparty/pcre/pcre_jit_compile.c:62,
                     from C:/Users/franck/Downloads/qt-everywhere-opensource-src-5.5.0/qtbase/src/3rdparty/pcre/pcre16_jit_compile.c:43:
    C:/Users/franck/Downloads/qt-everywhere-opensource-src-5.5.0/qtbase/src/3rdparty/pcre/sljit/sljitUtils.c:113:42: error: '__PTHREAD_SPINS' undeclared here (not in a function)
     static pthread_mutex_t allocator_mutex = PTHREAD_MUTEX_INITIALIZER;
                                              ^
    make[3]: *** [.obj/pcre16_jit_compile.obj] Error 1
    make[3]: Leaving directory `/c/Users/franck/Downloads/qt-build/qtbase/src/3rdparty/pcre'
    make[2]: *** [sub-3rdparty-pcre-make_first] Error 2
    make[2]: Leaving directory `/c/Users/franck/Downloads/qt-build/qtbase/src'
    make[1]: *** [sub-src-make_first] Error 2
    make[1]: Leaving directory `/c/Users/franck/Downloads/qt-build/qtbase'
    make: *** [module-qtbase-make_first] Error 2
    

    There is a problem with static pthread_mutex_t allocator_mutex = PTHREAD_MUTEX_INITIALIZER; but i don't understand why ? In the sljitUtils.c file I have :

    #if (defined SLJIT_EXECUTABLE_ALLOCATOR && SLJIT_EXECUTABLE_ALLOCATOR)
    
    #include <pthread.h>
    
    //UNDER IS LINE 113
    static pthread_mutex_t allocator_mutex = PTHREAD_MUTEX_INITIALIZER; 
    
    static SLJIT_INLINE void allocator_grab_lock(void)
    {
    	pthread_mutex_lock(&allocator_mutex);
    }
    
    static SLJIT_INLINE void allocator_release_lock(void)
    {
    	pthread_mutex_unlock(&allocator_mutex);
    }
    
    #endif /* SLJIT_EXECUTABLE_ALLOCATOR */
    

    Someone can help me to compile Qt for raspberry under windows?

    Thanks


  • Qt Champions 2019

    @Franckynos Why don't you use a more recent Qt version?



  • Because I haven't info for newest version but i'll try


  • Lifetime Qt Champion

    Hi
    You can also cheat and just download it ;)
    http://www.qtrpi.com/home
    (only 5.7 but might not matter if you just want to test it out)