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. Error when attempting to remote debug a Beaglebone
QtWS25 Last Chance

Error when attempting to remote debug a Beaglebone

Scheduled Pinned Locked Moved Solved Mobile and Embedded
beaglebone
12 Posts 2 Posters 4.3k Views
  • 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.
  • mzimmersM Offline
    mzimmersM Offline
    mzimmers
    wrote on last edited by A Former User
    #1

    I'm trying to put together a Qt Creator environment so I can remotely debug a Beaglebone Black. With help, I've successfully built Qt, so I now have a qmake that I can use. I can build without incident. When I start the debugger, though, I get this result:

    Debugging starts
    Listening on port 10000
    Remote debugging from host 192.168.0.3
    Process /home/mzimmers/Qt/makeLEDOOP_Qt created; pid = 2525
    /home/mzimmers/Qt/makeLEDOOP_Qt: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: 
    version `GLIBCXX_3.4.21' not found (required by /home/mzimmers/Qt/makeLEDOOP_Qt)
    
    Child exited with status 1
    Debugging has finished
    

    My (beginner's) interpretation is that I have an out-of-date library file. Does this seem like the right interpretation? And, is it referring to the file on my desktop (not the BBB)?

    On both systems, libstdc++.so.6 is a link to libstdc++.so.6.0.20, which exists in the same directory. So, I'm not sure what's going on.

    Any ideas would be much appreciated. Thanks...

    EDIT: some additional information...

    mzimmers@debian:/usr/lib/arm-linux-gnueabihf$ nm -D libstdc++.so.6.0.20 | grep GLIBC
    00000000 A GLIBCXX_3.4
    00000000 A GLIBCXX_3.4.1
    00000000 A GLIBCXX_3.4.10
    00000000 A GLIBCXX_3.4.11
    00000000 A GLIBCXX_3.4.12
    00000000 A GLIBCXX_3.4.13
    00000000 A GLIBCXX_3.4.14
    00000000 A GLIBCXX_3.4.15
    00000000 A GLIBCXX_3.4.16
    00000000 A GLIBCXX_3.4.17
    00000000 A GLIBCXX_3.4.18
    00000000 A GLIBCXX_3.4.19
    00000000 A GLIBCXX_3.4.2
    00000000 A GLIBCXX_3.4.20
    00000000 A GLIBCXX_3.4.3
    00000000 A GLIBCXX_3.4.4
    00000000 A GLIBCXX_3.4.5
    00000000 A GLIBCXX_3.4.6
    00000000 A GLIBCXX_3.4.7
    00000000 A GLIBCXX_3.4.8
    00000000 A GLIBCXX_3.4.9
    mzimmers@debian:/usr/lib/arm-linux-gnueabihf$ 
    
    

    Same result on the BBB.

    So, how is it that my project seems to be requesting a version of a library element that I don't have?

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

      Hi,

      Can you check which version of gcc you would get on your BBB ?

      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
      • mzimmersM Offline
        mzimmersM Offline
        mzimmers
        wrote on last edited by
        #3

        Hi SGaist -

        In /usr/bin it looks like 4.9.

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

          The cross-compiler you used is at 6.2.1, that might be the issue here.

          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
          1
          • mzimmersM Offline
            mzimmersM Offline
            mzimmers
            wrote on last edited by
            #5

            I guess I don't really understand what the problem is. The libraries on the host an d the BBB are identical (at least from the standpoint of which versions they contain). Where is the request for this missing version 3.4.21 coming from?

            I will look for a newer version of the toolchain for the BBB on linaro.

            1 Reply Last reply
            0
            • mzimmersM Offline
              mzimmersM Offline
              mzimmers
              wrote on last edited by
              #6

              So I attempted to retrieve the latest version of the GNU ARM toolchain using this command:

              sudo apt-get install build-essential
              

              But it said I already have the latest version of build-essential.

              Where else can I get this package? Or do I need to just download onto my desktop and use ftp or something to transfer the files to the BBB?

              Thanks...

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

                Just to be on the safe side, I'd recommend rebuilding Qt with the Linaro 4.9 cross-compiler. You can find it here along with the matching sysroot.

                That way you should be using the same set of libraries. Furthermore, rather than use the Linaro sysroot, you could use your BBB root filesystem as sysroot, so you'd ensure that you'll be linking with the same libraries your application should run with.

                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
                1
                • mzimmersM Offline
                  mzimmersM Offline
                  mzimmers
                  wrote on last edited by
                  #8

                  Thanks, Mr. Gaist. Am I correct in assuming the file I want is:

                  https://releases.linaro.org/components/toolchain/binaries/4.9-2017.01/arm-linux-gnueabihf/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz

                  And, regarding using the BBB file system as sysroot, this would mean I'd need a copy of that filesystem on my desktop (where I'm building Qt), right?

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

                    Looks good yes.

                    As for the sysroot, you can either copy it or you could also mount it using e.g. sshfs.

                    That means having your BBB powered up and running a ssh server which is likely already the case. The pros is that if you are missing a dev package you can just log into your BBB, add it and it will be directly available for cross-compilation. The cons is that you need to have your device powered up and running but all in all it will likely be the case anyway so it's up to you.

                    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
                    • mzimmersM Offline
                      mzimmersM Offline
                      mzimmers
                      wrote on last edited by
                      #10

                      Thanks...I'm running make right now. It will be interesting to see whether I have to run make install this time, as I did last time despite the instructions saying I didn't have to.

                      So, if I simply make a copy of the / directory on the BBB, and put it somewhere on my desktop system, I could use that as my sysroot for the build (asking for future reference)?

                      1 Reply Last reply
                      0
                      • mzimmersM Offline
                        mzimmersM Offline
                        mzimmers
                        wrote on last edited by
                        #11

                        Hi, SGaist -

                        I was wondering whether I'd ever see the day when we got there, but...we got there. I just successfully launched the debugger and ran an example from Molloy's chapter 5 (manipulating the on-board LEDs).

                        I'd like to thank you profusely for your help in getting this done. Come to the states sometime, and I'll buy you a beer or three...

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

                          Great !

                          Happy hacking then :)

                          Don't forget to mark the thread as solved using the "Topic Tools" button ;)

                          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