Raspberry Pi 3: debug info, how to fix?



  • hello:
    after i finish cross complie on rpi3 following steps :
    http://wiki.qt.io/RaspberryPi2EGLFS
    then i start to debug a program, here are informaitons:
    Could not load shared library symbols for 3 libraries, e.g. /usr/local/qt5pi/lib/libQt5Widgets.so.5.
    Use the "info sharedlibrary" command to see the complete listing.
    Do you need "set solib-search-path" or "set sysroot"?Could not load shared library symbols for 3 libraries, e.g. /usr/local/qt5pi/plugins/platforms/libqeglfs.so.
    Use the "info sharedlibrary" command to see the complete listing.
    Do you need "set solib-search-path" or "set sysroot"?Could not load shared library symbols for /usr/local/qt5pi/plugins/egldeviceintegrations/libqeglfs-brcm-integration.so.
    Do you need "set solib-search-path" or "set sysroot"?Could not load shared library symbols for /usr/local/qt5pi/plugins/imageformats/libqdds.so.
    Do you need "set solib-search-path" or "set sysroot"?Could not load shared library symbols for /usr/local/qt5pi/plugins/imageformats/libqgif.so.
    Do you need "set solib-search-path" or "set sysroot"?Could not load shared library symbols for /usr/local/qt5pi/plugins/imageformats/libqicns.so.
    Do you need "set solib-search-path" or "set sysroot"?Could not load shared library symbols for /usr/local/qt5pi/plugins/imageformats/libqico.so.
    Do you need "set solib-search-path" or "set sysroot"?Could not load shared library symbols for /usr/local/qt5pi/plugins/imageformats/libqjpeg.so.
    Do you need "set solib-search-path" or "set sysroot"?Could not load shared library symbols for /usr/local/qt5pi/plugins/imageformats/libqmng.so.
    Do you need "set solib-search-path" or "set sysroot"?Could not load shared library symbols for 2 libraries, e.g. /usr/local/qt5pi/plugins/imageformats/libqsvg.so.
    Use the "info sharedlibrary" command to see the complete listing.
    Do you need "set solib-search-path" or "set sysroot"?Could not load shared library symbols for /usr/local/qt5pi/plugins/imageformats/libqtga.so.
    Do you need "set solib-search-path" or "set sysroot"?Could not load shared library symbols for /usr/local/qt5pi/plugins/imageformats/libqtiff.so.
    Do you need "set solib-search-path" or "set sysroot"?Could not load shared library symbols for /usr/local/qt5pi/plugins/imageformats/libqwbmp.so.
    Do you need "set solib-search-path" or "set sysroot"?Could not load shared library symbols for /usr/local/qt5pi/plugins/imageformats/libqwebp.so.
    Do you need "set solib-search-path" or "set sysroot"?Unable to query physical screen size, defaulting to 100 dpi.
    To override, set QT_QPA_EGLFS_PHYSICAL_WIDTH and QT_QPA_EGLFS_PHYSICAL_HEIGHT (in millimeters).
    how can i fix it ? thank you !



  • @JiujiuTong said in Qt on rpi3 , debug info ,how to fix?:

    hello:
    after i finish cross complie on rpi3 following steps :
    http://wiki.qt.io/RaspberryPi2EGLFS
    then i start to debug a program, here are informaitons:
    Could not load shared library symbols for 3 libraries, e.g. /usr/local/qt5pi/lib/libQt5Widgets.so.5.
    Use the "info sharedlibrary" command to see the complete listing.
    Do you need "set solib-search-path" or "set sysroot"?Could not load shared library symbols for 3 libraries, e.g. /usr/local/qt5pi/plugins/platforms/libqeglfs.so.
    Use the "info sharedlibrary" command to see the complete listing.
    Do you need "set solib-search-path" or "set sysroot"?Could not load shared library symbols for /usr/local/qt5pi/plugins/egldeviceintegrations/libqeglfs-brcm-integration.so.
    Do you need "set solib-search-path" or "set sysroot"?Could not load shared library symbols for /usr/local/qt5pi/plugins/imageformats/libqdds.so.
    Do you need "set solib-search-path" or "set sysroot"?Could not load shared library symbols for /usr/local/qt5pi/plugins/imageformats/libqgif.so.
    Do you need "set solib-search-path" or "set sysroot"?Could not load shared library symbols for /usr/local/qt5pi/plugins/imageformats/libqicns.so.
    Do you need "set solib-search-path" or "set sysroot"?Could not load shared library symbols for /usr/local/qt5pi/plugins/imageformats/libqico.so.
    Do you need "set solib-search-path" or "set sysroot"?Could not load shared library symbols for /usr/local/qt5pi/plugins/imageformats/libqjpeg.so.
    Do you need "set solib-search-path" or "set sysroot"?Could not load shared library symbols for /usr/local/qt5pi/plugins/imageformats/libqmng.so.
    Do you need "set solib-search-path" or "set sysroot"?Could not load shared library symbols for 2 libraries, e.g. /usr/local/qt5pi/plugins/imageformats/libqsvg.so.
    Use the "info sharedlibrary" command to see the complete listing.
    Do you need "set solib-search-path" or "set sysroot"?Could not load shared library symbols for /usr/local/qt5pi/plugins/imageformats/libqtga.so.
    Do you need "set solib-search-path" or "set sysroot"?Could not load shared library symbols for /usr/local/qt5pi/plugins/imageformats/libqtiff.so.
    Do you need "set solib-search-path" or "set sysroot"?Could not load shared library symbols for /usr/local/qt5pi/plugins/imageformats/libqwbmp.so.
    Do you need "set solib-search-path" or "set sysroot"?Could not load shared library symbols for /usr/local/qt5pi/plugins/imageformats/libqwebp.so.
    Do you need "set solib-search-path" or "set sysroot"?Unable to query physical screen size, defaulting to 100 dpi.
    To override, set QT_QPA_EGLFS_PHYSICAL_WIDTH and QT_QPA_EGLFS_PHYSICAL_HEIGHT (in millimeters).
    how can i fix it ? thank you !

    debug with QTcreator on host linux ,get these informations. how to fix, thank you!


  • Moderators

    @JiujiuTong You need debug version of Qt libraries. You can easily build both versions at the same time adding -debug-and-release parameter to configure command.



  • @jsulm
    do you mean add -debug-and-release option in configure command before install qt ?



  • @JiujiuTong said in Qt on rpi3 , debug info ,how to fix?:

    @jsulm
    do you mean add -debug-and-release option in configure command before install qt ?

    i remeber when using native build method , the -debug-and-release option is invalid.
    i will try to reconfig qt with this option.


  • Moderators

    @JiujiuTong What do you mean by invalid? You need to rebuild Qt with that parameter.


  • Moderators

    @JiujiuTong Do you actually want to debug Qt libs? If not then you do not need a debug build and you can just ignore those warnings.



  • @jsulm
    the configuer output indicate that -debug-and-release has no effect, and only realse version was built, anyway i will use this option with cross complier method to check the result.



  • @jsulm
    the output with -debug-and-release option:
    WARNING: -debug-and-release is not supported outside of Mac OS X.
    Qt can be built in release mode with separate debug information, so
    -debug-and-release is not necessary anymore



  • @jsulm
    I do not want to debug Qt libs, just want to debug my project.
    is it ok with these warning if i just want to debug my program ?


  • Moderators

    @JiujiuTong Yes it is OK. Just build your project in Debug mode.



  • @jsulm
    well, thank you



  • @jsulm
    another question:
    my host is Centos 7 x64 , should i change`the following :
    Go to Options -> Compilers
    Add
    GCC
    Compiler path: ~/raspi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/arm-linux-gnueabihf-g++
    to
    Go to Options -> Compilers
    Add
    GCC
    Compiler path: ~/raspi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/arm-linux-gnueabihf-g++
    in Qt Creator configuration?



  • @jsulm
    my project compile output is :
    /home/tong/raspi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/../../../../arm-linux-gnueabihf/bin/ld: skipping incompatible /usr/lib/libpthread.so when searching for -lpthread
    /home/tong/raspi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/../../../../arm-linux-gnueabihf/bin/ld: skipping incompatible /usr/lib/libm.so when searching for -lm
    /home/tong/raspi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/../../../../arm-linux-gnueabihf/bin/ld: skipping incompatible /usr/lib/libc.so when searching for -lc
    /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference to QGLContext::currentContext()@Qt_5' /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference toQGLShaderProgram::setAttributeArray(char const*, float const*, int, int)@Qt_5'
    /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference to QGLShaderProgram::hasOpenGLShaderPrograms(QGLContext const*)@Qt_5' /home/tong/raspi/sysroot/usr/lib/arm-linux-gnueabihf/libQt5OpenGL.so.5: undefined reference toQStaticTextItem::setFontEngine(QFontEngine*)'
    /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference to QGLShaderProgram::addShaderFromSourceCode(QFlags<QGLShader::ShaderTypeBit>, char const*)@Qt_5' /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference toQGLContext::contextHandle() const@Qt_5'
    /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference to QGLShaderProgram::removeAllShaders()@Qt_5' /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference toQGLShaderProgram::enableAttributeArray(char const*)@Qt_5'
    /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference to QGLShaderProgram::link()@Qt_5' /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference toQGLShaderProgram::QGLShaderProgram(QGLContext const*, QObject*)@Qt_5'
    /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference to QGLShaderProgram::release()@Qt_5' /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference toQGLShaderProgram::setUniformValue(char const*, QMatrix4x4 const&)@Qt_5'
    /home/tong/raspi/sysroot/usr/lib/libactivemq-cpp.so: undefined reference to std::__throw_out_of_range_fmt(char const*, ...)@GLIBCXX_3.4.20' /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference toQGLShaderProgram::~QGLShaderProgram()@Qt_5'
    /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference to QGLShaderProgram::log() const@Qt_5' /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference toQGLShaderProgram::setUniformValue(char const*, float const (*) [4])@Qt_5'
    /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference to QGLShaderProgram::setUniformValue(char const*, int)@Qt_5' /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference toQGLShaderProgram::bind()@Qt_5'
    collect2: error: ld returned 1 exit status
    make: *** [FMT] Error 1
    23:37:26: The process "/usr/bin/make" exited with code 2.
    Error while building/deploying project FMT (kit: rpi3)
    When executing step "Make"
    do you know what's wrong with it ? thank you very much!! my project is cross complier project, my host is centos 7 64bit ,my target device is rpi3 following the steps :
    http://wiki.qt.io/RaspberryPi2E
    the difference is that my QT5.7.1 source code is download form QT not from git, and i run the configure command (./configure -release -opengl es2 -skip webengine -device linux-rasp-pi2-g++ -device-option CROSS_COMPILE=~/raspi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/arm-linux-gnueabihf- -sysroot ~/raspi/sysroot -opensource -confirm-license -make libs -prefix /usr/local/qt5pi -extprefix ~/raspi/qt5pi -hostprefix ~/raspi/qt5 -v) under Qt5.7.1 directory not under Qtbase, so i think all modules except webengine are installed. and i configure QT creator with raspi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/ /arm-linux-gnueabihf-g++
    and i skipped the "11. Still on the device, fix the EGL/GLES library nonsense:"
    the error informations seems to relative with qtmultimedia and qtthread. i really don't know how to fix with this. please help me,thank you!


  • Moderators

    @JiujiuTong It doesn't matter whether the compiler itself is 32bit or 64bit.
    Regarding errors: were QtMultimedia and Qt OpenGL modules built?



  • @jsulm
    do you mean QtMultimedia and Qt OpenGL were not built ?
    in qt-everywhere-opensource Qt5.7.1, with "./configure -release -opengl es2 -skip webengine -device linux-rasp-pi2-g++ -device-option CROSS_COMPILE=~/raspi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/arm-linux-gnueabihf- -sysroot ~/raspi/sysroot -opensource -confirm-license -make libs -prefix /usr/local/qt5pi -extprefix ~/raspi/qt5pi -hostprefix ~/raspi/qt5 -v ", i think these module should be built , how to check if these modules were built or not ?


  • Moderators

    @JiujiuTong Are the libraries there?



  • @jsulm
    Qt OpenGL modules? it seems no this module there.
    and i rebuild QtMultimedia module, it's no problem
    there is no need to install OpenGL in raspberry 3 ,right?
    in my host i have install openGL now ,it still doesn't work



  • @jsulm
    i can find libQt5MultimediaWidgets.so , but i don't know where to find openGL related files...


  • Moderators



  • @jsulm
    I reconfigure and reinstall the QT,and find the opengl related files in the source qtbase ,
    I also find the libQt5OpenGL.so after reinstall. I will retry the project later. thank you for your informs.



  • @jsulm
    i have check the files , both ligQt5OpenGL.so and libQt5Multimedia.so exists,
    and the build output is still:
    /home/tong/raspi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/../../../../arm-linux-gnueabihf/bin/ld: skipping incompatible /usr/lib/libpthread.so when searching for -lpthread
    /home/tong/raspi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/../../../../arm-linux-gnueabihf/bin/ld: skipping incompatible /usr/lib/libm.so when searching for -lm
    /home/tong/raspi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/../../../../arm-linux-gnueabihf/bin/ld: skipping incompatible /usr/lib/libc.so when searching for -lc
    /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference to QGLContext::currentContext()@Qt_5' /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference toQGLShaderProgram::setAttributeArray(char const*, float const*, int, int)@Qt_5'
    /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference to QGLShaderProgram::hasOpenGLShaderPrograms(QGLContext const*)@Qt_5' /home/tong/raspi/sysroot/usr/lib/arm-linux-gnueabihf/libQt5OpenGL.so.5: undefined reference toQStaticTextItem::setFontEngine(QFontEngine*)'
    /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference to QGLShaderProgram::addShaderFromSourceCode(QFlags<QGLShader::ShaderTypeBit>, char const*)@Qt_5' /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference toQGLContext::contextHandle() const@Qt_5'
    /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference to QGLShaderProgram::removeAllShaders()@Qt_5' /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference toQGLShaderProgram::enableAttributeArray(char const*)@Qt_5'
    /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference to QGLShaderProgram::link()@Qt_5' /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference toQGLShaderProgram::QGLShaderProgram(QGLContext const*, QObject*)@Qt_5'
    /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference to QGLShaderProgram::release()@Qt_5' /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference toQGLShaderProgram::setUniformValue(char const*, QMatrix4x4 const&)@Qt_5'
    /home/tong/raspi/sysroot/usr/lib/libactivemq-cpp.so: undefined reference to std::__throw_out_of_range_fmt(char const*, ...)@GLIBCXX_3.4.20' /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference toQGLShaderProgram::~QGLShaderProgram()@Qt_5'
    /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference to QGLShaderProgram::log() const@Qt_5' /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference toQGLShaderProgram::setUniformValue(char const*, float const (*) [4])@Qt_5'
    /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference to QGLShaderProgram::setUniformValue(char const*, int)@Qt_5' /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference toQGLShaderProgram::bind()@Qt_5'
    collect2: error: ld returned 1 exit status
    make: *** [FMT] Error 1
    20:57:20: The process "/usr/bin/make" exited with code 2.
    Error while building/deploying project FMT (kit: rpi3)
    The kit rpi3 has configuration issues which might be the root cause for this problem.
    When executing step "Make"



  • @JiujiuTong said in Qt on rpi3 , debug info ,how to fix?:

    @jsulm
    i have check the files , both ligQt5OpenGL.so and libQt5Multimedia.so exists,
    and the build output is still:
    /home/tong/raspi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/../../../../arm-linux-gnueabihf/bin/ld: skipping incompatible /usr/lib/libpthread.so when searching for -lpthread
    /home/tong/raspi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/../../../../arm-linux-gnueabihf/bin/ld: skipping incompatible /usr/lib/libm.so when searching for -lm
    /home/tong/raspi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/../../../../arm-linux-gnueabihf/bin/ld: skipping incompatible /usr/lib/libc.so when searching for -lc
    /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference to QGLContext::currentContext()@Qt_5' /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference toQGLShaderProgram::setAttributeArray(char const*, float const*, int, int)@Qt_5'
    /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference to QGLShaderProgram::hasOpenGLShaderPrograms(QGLContext const*)@Qt_5' /home/tong/raspi/sysroot/usr/lib/arm-linux-gnueabihf/libQt5OpenGL.so.5: undefined reference toQStaticTextItem::setFontEngine(QFontEngine*)'
    /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference to QGLShaderProgram::addShaderFromSourceCode(QFlags<QGLShader::ShaderTypeBit>, char const*)@Qt_5' /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference toQGLContext::contextHandle() const@Qt_5'
    /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference to QGLShaderProgram::removeAllShaders()@Qt_5' /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference toQGLShaderProgram::enableAttributeArray(char const*)@Qt_5'
    /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference to QGLShaderProgram::link()@Qt_5' /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference toQGLShaderProgram::QGLShaderProgram(QGLContext const*, QObject*)@Qt_5'
    /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference to QGLShaderProgram::release()@Qt_5' /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference toQGLShaderProgram::setUniformValue(char const*, QMatrix4x4 const&)@Qt_5'
    /home/tong/raspi/sysroot/usr/lib/libactivemq-cpp.so: undefined reference to std::__throw_out_of_range_fmt(char const*, ...)@GLIBCXX_3.4.20' /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference toQGLShaderProgram::~QGLShaderProgram()@Qt_5'
    /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference to QGLShaderProgram::log() const@Qt_5' /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference toQGLShaderProgram::setUniformValue(char const*, float const (*) [4])@Qt_5'
    /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference to QGLShaderProgram::setUniformValue(char const*, int)@Qt_5' /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference toQGLShaderProgram::bind()@Qt_5'
    collect2: error: ld returned 1 exit status
    make: *** [FMT] Error 1
    20:57:20: The process "/usr/bin/make" exited with code 2.
    Error while building/deploying project FMT (kit: rpi3)
    The kit rpi3 has configuration issues which might be the root cause for this problem.
    When executing step "Make"
    @jsulm ,do you have any ideas? thank you !


  • Moderators

    @JiujiuTong said in Qt on rpi3 , debug info ,how to fix?:

    skipping incompatible /usr/lib/libpthread.so

    You are linking against x86 libraries installed in your host machine! You need to link against libraries for your target device since you're cross-compiling.



  • @jsulm
    my host machine is x64 , i don't kown what to do.
    can you tell me how to link it please? i'm following the instructures descripted by :
    http://wiki.qt.io/RaspberryPi2EGLFS
    can you give me some instructions please!,thank you very much


  • Moderators

    @JiujiuTong How are you building? Can you show your configure call? Does your sysroot contain all needed libraries?



  • @jsulm
    i,m using cross compile,and my configure is :
    ./configure -release -opengl es2 -skip webengine -device linux-rasp-pi2-g++
    -device-option CROSS_COMPILE=~/raspi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/arm-linux-gnueabihf-
    -sysroot ~/raspi/sysroot -opensource -confirm-license -make libs
    -prefix /usr/local/qt5pi -extprefix ~/raspi/qt5pi -hostprefix ~/raspi/qt5 -v

    and i sysroot all the directory under raspi with "./sysroot-relativelinks.py sysroot"


  • Moderators

    @JiujiuTong said in Qt on rpi3 , debug info ,how to fix?:

    ~/raspi/sysroot

    Did you check that your sysroot really contains what is needed (for example ~/raspi/sysroot/usr/lib)?



  • @jsulm
    i really don't know what libs are needed, so i do not check the Dir, the folder is created by :
    mkdir sysroot sysroot/usr sysroot/opt
    rsync -avz pi@raspberrypi.local:/lib sysroot
    rsync -avz pi@raspberrypi.local:/usr/include sysroot/usr
    rsync -avz pi@raspberrypi.local:/usr/lib sysroot/usr
    rsync -avz pi@raspberrypi.local:/opt/vc sysroot/opt
    and i checked that the output is right with no error.


  • Moderators

    @JiujiuTong Maybe you should try to call configure from a clean Qt source directory? Did you try to build Qt before for x86? Even better would be to do out of source build see http://stackoverflow.com/questions/1245011/how-to-build-qt-out-of-source



  • @jsulm
    i confirm the source file is clean ,it is download from QT. i have built the QT under windows and centos x64, but not for x86.


  • Moderators

    @JiujiuTong What I mean with this "Did you try to build Qt before for x86?" is - did you build for x86 OR x86_64 before from the SAME source code tree? Because currently you're linking against your host libraries.



  • @jsulm
    and i have tried to start a simple qt application(just a page with nothing showed ). it works well .
    the source file is clean every time i try to build the QT, i will delete the source file and extract it from source file.



  • Is that you are trying to say add debug and release configuration option before install QT?



  • @crasskitty
    sorry , i don't understand what's your meanings



  • I dont´t know if you still have the debugging problem but to answer to your first post:

    The qt libraries for rpi are written to the qt5pi directory, outside of the rsynced sysroot.
    The debugger is looking in the local sysroot directory for the libraries if you debug remote targets.
    So just tell gdb to load the libraries of your project from the debugging target.
    In Qt Creator go to Options->Debugger GDB-Tab an insert set sysroot target:/ in "Additional Startup Commands"



  • @sneubert
    thank you for your answer!
    should I just insert "set sysroot target:/" in "Additional Startup Commands" or replace string with my ENV value?
    I can understand you description, but confused with "set sysroot target:/" i have set sysroot to "/home/tong/rasp/sysroot" in build&run -->kits-->sysroot. should the target:/ be the real path or something? thank you very much!



  • Leave you sysroot path in build&run --> kit --> sysroot the way it is, because this is needed for building your application. The set sysroot command I told you is just for gdb to instruct loading libraries remote. Use the exact string set sysroot target:/ only for "Additional Startup Commands" in Options->Debugger GDB-Tab.



  • @sneubert
    OK, thank you !



  • @SSGaist
    can you help me out of this problem? thank you!
    @jsulm
    i have check the files , both ligQt5OpenGL.so and libQt5Multimedia.so exists,
    and the build output is still:
    /home/tong/raspi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/../../../../arm-linux-gnueabihf/bin/ld: skipping incompatible /usr/lib/libpthread.so when searching for -lpthread
    /home/tong/raspi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/../../../../arm-linux-gnueabihf/bin/ld: skipping incompatible /usr/lib/libm.so when searching for -lm
    /home/tong/raspi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/../../../../arm-linux-gnueabihf/bin/ld: skipping incompatible /usr/lib/libc.so when searching for -lc
    /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference to QGLContext::currentContext()@Qt_5' /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference toQGLShaderProgram::setAttributeArray(char const*, float const*, int, int)@Qt_5'
    /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference to QGLShaderProgram::hasOpenGLShaderPrograms(QGLContext const*)@Qt_5' /home/tong/raspi/sysroot/usr/lib/arm-linux-gnueabihf/libQt5OpenGL.so.5: undefined reference toQStaticTextItem::setFontEngine(QFontEngine*)'
    /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference to QGLShaderProgram::addShaderFromSourceCode(QFlagsQGLShader::ShaderTypeBit, char const*)@Qt_5' /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference toQGLContext::contextHandle() const@Qt_5'
    /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference to QGLShaderProgram::removeAllShaders()@Qt_5' /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference toQGLShaderProgram::enableAttributeArray(char const*)@Qt_5'
    /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference to QGLShaderProgram::link()@Qt_5' /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference toQGLShaderProgram::QGLShaderProgram(QGLContext const*, QObject*)@Qt_5'
    /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference to QGLShaderProgram::release()@Qt_5' /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference toQGLShaderProgram::setUniformValue(char const*, QMatrix4x4 const&)@Qt_5'
    /home/tong/raspi/sysroot/usr/lib/libactivemq-cpp.so: undefined reference to std::__throw_out_of_range_fmt(char const*, ...)@GLIBCXX_3.4.20' /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference toQGLShaderProgram::~QGLShaderProgram()@Qt_5'
    /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference to QGLShaderProgram::log() const@Qt_5' /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference toQGLShaderProgram::setUniformValue(char const*, float const () [4])@Qt_5'
    /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference to QGLShaderProgram::setUniformValue(char const
    , int)@Qt_5' /home/tong/raspi/qt5pi/lib/libQt5MultimediaWidgets.so: undefined reference toQGLShaderProgram::bind()@Qt_5'
    collect2: error: ld returned 1 exit status


Log in to reply
 

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