Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Mobile and Embedded
  4. RaspberryPi2EGLFS cross compile - libQt5Core.so.5.6.0 Error 1
Forum Updated to NodeBB v4.3 + New Features

RaspberryPi2EGLFS cross compile - libQt5Core.so.5.6.0 Error 1

Scheduled Pinned Locked Moved Solved Mobile and Embedded
4 Posts 2 Posters 2.6k Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • daywongD Offline
    daywongD Offline
    daywong
    wrote on last edited by
    #1

    Hi,
    I am trying to compile QT by cross-compile by follow this tutorial.
    https://wiki.qt.io/RaspberryPi2EGLFS

    successful run configure by running this command.

    ./configure -release -opengl es2 -device linux-rasp-pi2-g++ -device-option CROSS_COMPILE=~/raspi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/arm-linux-gnueabihf- -sysroot ~/raspi/sysroot -opensource -confirm-license -no-xcb -make libs -prefix /usr/local/qt5pi -extprefix ~/raspi/qt5pi -hostprefix ~/raspi/qt5 -v
    

    a problem occurs when i run make command, provide the full stack from the first error.

    /home/daywong/raspi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/../../../../arm-linux-gnueabihf/bin/ld.gold: error: cannot open /home/daywong/raspi/sysroot/usr/lib/arm-linux-gnueabihf/libz.so: No such file or directory
    /home/daywong/raspi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/../../../../arm-linux-gnueabihf/bin/ld.gold: error: cannot open /home/daywong/raspi/sysroot/usr/lib/arm-linux-gnueabihf/libglib-2.0.so: No such file or directory
    /home/daywong/raspi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/../../../../arm-linux-gnueabihf/bin/ld.gold: error: cannot open /home/daywong/raspi/sysroot/usr/lib/arm-linux-gnueabihf/librt.so: No such file or directory
    /home/daywong/raspi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/../../../../arm-linux-gnueabihf/bin/ld.gold: error: cannot open /home/daywong/raspi/sysroot/usr/lib/arm-linux-gnueabihf/libm.so: No such file or directory
    .obj/qbytearray.o:qbytearray.cpp:function qUncompress(unsigned char const*, int): error: undefined reference to 'uncompress'
    .obj/qbytearray.o:qbytearray.cpp:function qCompress(unsigned char const*, int, int): error: undefined reference to 'compress2'
    .obj/qdatetime.o:qdatetime.cpp:function fromIsoTimeString(QStringRef const&, Qt::DateFormat, bool*): error: undefined reference to 'pow'
    .obj/qdatetime.o:qdatetime.cpp:function fromIsoTimeString(QStringRef const&, Qt::DateFormat, bool*): error: undefined reference to 'floorf'
    .obj/qdatetime.o:qdatetime.cpp:function fromIsoTimeString(QStringRef const&, Qt::DateFormat, bool*): error: undefined reference to 'pow'
    .obj/qeasingcurve.o:qeasingcurve.cpp:function easeCosineCurve(double): error: undefined reference to 'cos'
    .obj/qeasingcurve.o:qeasingcurve.cpp:function easeInOutSine(double): error: undefined reference to 'cos'
    .obj/qeasingcurve.o:qeasingcurve.cpp:function easeSineCurve(double): error: undefined reference to 'sin'
    .obj/qeasingcurve.o:qeasingcurve.cpp:function easeOutSine(double): error: undefined reference to 'sin'
    .obj/qeasingcurve.o:qeasingcurve.cpp:function easeOutCurve(double): error: undefined reference to 'sin'
    .obj/qeasingcurve.o:qeasingcurve.cpp:function easeInOutCirc(double): error: undefined reference to 'sqrt'
    .obj/qeasingcurve.o:qeasingcurve.cpp:function easeInOutCirc(double): error: undefined reference to 'sqrt'
    .obj/qeasingcurve.o:qeasingcurve.cpp:function easeOutCirc(double): error: undefined reference to 'sqrt'
    .obj/qeasingcurve.o:qeasingcurve.cpp:function easeInCirc(double): error: undefined reference to 'sqrt'
    .obj/qeasingcurve.o:qeasingcurve.cpp:function easeOutInSine(double): error: undefined reference to 'cos'
    .obj/qeasingcurve.o:qeasingcurve.cpp:function easeOutInSine(double): error: undefined reference to 'sin'
    .obj/qeasingcurve.o:qeasingcurve.cpp:function easeInOutExpo(double): error: undefined reference to 'pow'
    .obj/qeasingcurve.o:qeasingcurve.cpp:function easeInOutExpo(double): error: undefined reference to 'pow'
    .obj/qeasingcurve.o:qeasingcurve.cpp:function easeInSine(double): error: undefined reference to 'cos'
    .obj/qeasingcurve.o:qeasingcurve.cpp:function ElasticEase::value(double): error: undefined reference to 'asin'
    .obj/qeasingcurve.o:qeasingcurve.cpp:function ElasticEase::value(double): error: undefined reference to 'asin'
    .obj/qeasingcurve.o:qeasingcurve.cpp:function ElasticEase::value(double): error: undefined reference to 'asin'
    .obj/qeasingcurve.o:qeasingcurve.cpp:function ElasticEase::value(double): error: undefined reference to 'asin'
    .obj/qline.o:qline.cpp:function QLineF::angle() const: error: undefined reference to 'atan2'
    .obj/qline.o:qline.cpp:function QLineF::setAngle(double): error: undefined reference to 'sincos'
    .obj/qline.o:qline.cpp:function QLineF::fromPolar(double, double): error: undefined reference to 'sincos'
    .obj/qline.o:qline.cpp:function QLineF::angle(QLineF const&) const: error: undefined reference to 'acos'
    .obj/qlocale_tools.o:qlocale_tools.cpp:function qdtoa(double, int, int, int*, int*, char**, char**): error: undefined reference to 'feholdexcept'
    .obj/qlocale_tools.o:qlocale_tools.cpp:function qdtoa(double, int, int, int*, int*, char**, char**): error: undefined reference to 'fesetenv'
    .obj/qrect.o:qrect.cpp:function QRectF::toAlignedRect() const: error: undefined reference to 'floor'
    .obj/qrect.o:qrect.cpp:function QRectF::toAlignedRect() const: error: undefined reference to 'ceil'
    .obj/qrect.o:qrect.cpp:function QRectF::toAlignedRect() const: error: undefined reference to 'floor'
    .obj/qrect.o:qrect.cpp:function QRectF::toAlignedRect() const: error: undefined reference to 'ceil'
    .obj/qtimeline.o:qtimeline.cpp:function QTimeLine::frameForTime(int) const: error: undefined reference to 'ceil'
    .obj/qeventdispatcher_glib.o:qeventdispatcher_glib.cpp:function QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>): error: undefined reference to 'g_main_context_iteration'
    .obj/qeventdispatcher_glib.o:qeventdispatcher_glib.cpp:function QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>): error: undefined reference to 'g_main_context_iteration'
    .obj/qeventdispatcher_glib.o:qeventdispatcher_glib.cpp:function QEventDispatcherGlib::hasPendingEvents(): error: undefined reference to 'g_main_context_pending'
    .obj/qeventdispatcher_glib.o:qeventdispatcher_glib.cpp:function QEventDispatcherGlib::wakeUp(): error: undefined reference to 'g_main_context_wakeup'
    .obj/qeventdispatcher_glib.o:qeventdispatcher_glib.cpp:function QEventDispatcherGlib::unregisterSocketNotifier(QSocketNotifier*): error: undefined reference to 'g_source_remove_poll'
    .obj/qeventdispatcher_glib.o:qeventdispatcher_glib.cpp:function QEventDispatcherGlib::unregisterSocketNotifier(QSocketNotifier*): error: undefined reference to 'g_source_remove_poll'
    .obj/qeventdispatcher_glib.o:qeventdispatcher_glib.cpp:function QEventDispatcherGlib::~QEventDispatcherGlib(): error: undefined reference to 'g_source_destroy'
    .obj/qeventdispatcher_glib.o:qeventdispatcher_glib.cpp:function QEventDispatcherGlib::~QEventDispatcherGlib(): error: undefined reference to 'g_source_unref'
    .obj/qeventdispatcher_glib.o:qeventdispatcher_glib.cpp:function QEventDispatcherGlib::~QEventDispatcherGlib(): error: undefined reference to 'g_source_destroy'
    .obj/qeventdispatcher_glib.o:qeventdispatcher_glib.cpp:function QEventDispatcherGlib::~QEventDispatcherGlib(): error: undefined reference to 'g_source_unref'
    .obj/qeventdispatcher_glib.o:qeventdispatcher_glib.cpp:function QEventDispatcherGlib::~QEventDispatcherGlib(): error: undefined reference to 'g_source_remove_poll'
    .obj/qeventdispatcher_glib.o:qeventdispatcher_glib.cpp:function QEventDispatcherGlib::~QEventDispatcherGlib(): error: undefined reference to 'g_source_destroy'
    .obj/qeventdispatcher_glib.o:qeventdispatcher_glib.cpp:function QEventDispatcherGlib::~QEventDispatcherGlib(): error: undefined reference to 'g_source_unref'
    .obj/qeventdispatcher_glib.o:qeventdispatcher_glib.cpp:function QEventDispatcherGlib::~QEventDispatcherGlib(): error: undefined reference to 'g_source_destroy'
    .obj/qeventdispatcher_glib.o:qeventdispatcher_glib.cpp:function QEventDispatcherGlib::~QEventDispatcherGlib(): error: undefined reference to 'g_source_unref'
    .obj/qeventdispatcher_glib.o:qeventdispatcher_glib.cpp:function QEventDispatcherGlib::~QEventDispatcherGlib(): error: undefined reference to 'g_main_context_pop_thread_default'
    .obj/qeventdispatcher_glib.o:qeventdispatcher_glib.cpp:function QEventDispatcherGlib::~QEventDispatcherGlib(): error: undefined reference to 'g_main_context_unref'
    .obj/qeventdispatcher_glib.o:qeventdispatcher_glib.cpp:function QEventDispatcherGlibPrivate::QEventDispatcherGlibPrivate(_GMainContext*): error: undefined reference to 'g_main_context_ref'
    .obj/qeventdispatcher_glib.o:qeventdispatcher_glib.cpp:function QEventDispatcherGlibPrivate::QEventDispatcherGlibPrivate(_GMainContext*): error: undefined reference to 'g_main_context_push_thread_default'
    .obj/qeventdispatcher_glib.o:qeventdispatcher_glib.cpp:function QEventDispatcherGlibPrivate::QEventDispatcherGlibPrivate(_GMainContext*): error: undefined reference to 'g_source_new'
    .obj/qeventdispatcher_glib.o:qeventdispatcher_glib.cpp:function QEventDispatcherGlibPrivate::QEventDispatcherGlibPrivate(_GMainContext*): error: undefined reference to 'g_source_set_can_recurse'
    .obj/qeventdispatcher_glib.o:qeventdispatcher_glib.cpp:function QEventDispatcherGlibPrivate::QEventDispatcherGlibPrivate(_GMainContext*): error: undefined reference to 'g_source_attach'
    .obj/qeventdispatcher_glib.o:qeventdispatcher_glib.cpp:function QEventDispatcherGlibPrivate::QEventDispatcherGlibPrivate(_GMainContext*): error: undefined reference to 'g_source_new'
    .obj/qeventdispatcher_glib.o:qeventdispatcher_glib.cpp:function QEventDispatcherGlibPrivate::QEventDispatcherGlibPrivate(_GMainContext*): error: undefined reference to 'g_source_set_can_recurse'
    .obj/qeventdispatcher_glib.o:qeventdispatcher_glib.cpp:function QEventDispatcherGlibPrivate::QEventDispatcherGlibPrivate(_GMainContext*): error: undefined reference to 'g_source_attach'
    .obj/qeventdispatcher_glib.o:qeventdispatcher_glib.cpp:function QEventDispatcherGlibPrivate::QEventDispatcherGlibPrivate(_GMainContext*): error: undefined reference to 'g_source_new'
    .obj/qeventdispatcher_glib.o:qeventdispatcher_glib.cpp:function QEventDispatcherGlibPrivate::QEventDispatcherGlibPrivate(_GMainContext*): error: undefined reference to 'g_source_set_can_recurse'
    .obj/qeventdispatcher_glib.o:qeventdispatcher_glib.cpp:function QEventDispatcherGlibPrivate::QEventDispatcherGlibPrivate(_GMainContext*): error: undefined reference to 'g_source_attach'
    .obj/qeventdispatcher_glib.o:qeventdispatcher_glib.cpp:function QEventDispatcherGlibPrivate::QEventDispatcherGlibPrivate(_GMainContext*): error: undefined reference to 'g_source_new'
    .obj/qeventdispatcher_glib.o:qeventdispatcher_glib.cpp:function QEventDispatcherGlibPrivate::QEventDispatcherGlibPrivate(_GMainContext*): error: undefined reference to 'g_source_set_can_recurse'
    .obj/qeventdispatcher_glib.o:qeventdispatcher_glib.cpp:function QEventDispatcherGlibPrivate::QEventDispatcherGlibPrivate(_GMainContext*): error: undefined reference to 'g_source_set_priority'
    .obj/qeventdispatcher_glib.o:qeventdispatcher_glib.cpp:function QEventDispatcherGlibPrivate::QEventDispatcherGlibPrivate(_GMainContext*): error: undefined reference to 'g_source_attach'
    .obj/qeventdispatcher_glib.o:qeventdispatcher_glib.cpp:function QEventDispatcherGlibPrivate::QEventDispatcherGlibPrivate(_GMainContext*): error: undefined reference to 'g_main_context_new'
    .obj/qeventdispatcher_glib.o:qeventdispatcher_glib.cpp:function QEventDispatcherGlibPrivate::QEventDispatcherGlibPrivate(_GMainContext*): error: undefined reference to 'g_main_context_default'
    .obj/qeventdispatcher_glib.o:qeventdispatcher_glib.cpp:function QEventDispatcherGlibPrivate::QEventDispatcherGlibPrivate(_GMainContext*): error: undefined reference to 'g_main_context_ref'
    .obj/qeventdispatcher_glib.o:qeventdispatcher_glib.cpp:function QEventDispatcherGlib::registerSocketNotifier(QSocketNotifier*): error: undefined reference to 'g_source_add_poll'
    collect2: error: ld returned 1 exit status
    make[2]: *** [../../lib/libQt5Core.so.5.6.0] Error 1
    make[2]: Leaving directory `/home/daywong/raspi/qtbase/src/corelib'
    make[1]: *** [sub-corelib-make_first] Error 2
    make[1]: Leaving directory `/home/daywong/raspi/qtbase/src'
    make: *** [sub-src-make_first] Error 2
    
    

    verified arm-linux-gnueabihf/libz.so is exist

    $ls ~/raspi/sysroot/usr/lib/arm-linux-gnueabihf/libz.so -alh
    lrwxrwxrwx 1 daywong daywong 38 Jan 17 20:54 /home/daywong/raspi/sysroot/usr/lib/arm-linux-gnueabihf/libz.so -> /lib/arm-linux-gnueabihf/libz.so.1.2.8
    
    
    1 Reply Last reply
    0
    • SGaistS Offline
      SGaistS Offline
      SGaist
      Lifetime Qt Champion
      wrote on last edited by
      #2

      Hi,

      That file is a symbolic link. Do you really have libz in /lib/arm-linux-gnueabihf/ ?

      Interested in AI ? www.idiap.ch
      Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

      daywongD 1 Reply Last reply
      1
      • SGaistS SGaist

        Hi,

        That file is a symbolic link. Do you really have libz in /lib/arm-linux-gnueabihf/ ?

        daywongD Offline
        daywongD Offline
        daywong
        wrote on last edited by
        #3

        @SGaist
        Hi SGaist,
        You are right. libz.so.1.2.8 was not exist by the symbolic link. Just created another symbolic link to /lib/x86_64-linux-gnu , where libz.so.1.2.8 is located. Thanks for your help.

        1 Reply Last reply
        0
        • SGaistS Offline
          SGaistS Offline
          SGaist
          Lifetime Qt Champion
          wrote on last edited by
          #4

          That's the wrong thing to do, now you are trying to link to a library of the wrong architecture. You can't mix ARM and x86_64 libraries.

          IIRC, there's a script to cleanup the links of the sysroot so that they can be used properly by the linker.

          Interested in AI ? www.idiap.ch
          Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

          1 Reply Last reply
          0

          • Login

          • Login or register to search.
          • First post
            Last post
          0
          • Categories
          • Recent
          • Tags
          • Popular
          • Users
          • Groups
          • Search
          • Get Qt Extensions
          • Unsolved