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. Problem while debugging on iMX6 target
Forum Updated to NodeBB v4.3 + New Features

Problem while debugging on iMX6 target

Scheduled Pinned Locked Moved Unsolved Mobile and Embedded
4 Posts 2 Posters 1.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.
  • G Offline
    G Offline
    Giox79
    wrote on last edited by
    #1

    Good morning,
    I'm using the following setup:

    • QT Creator 4.1.0
    • gdb 7.9.1
    • uP iMX6
    • Qt Version 5.5.1 on target

    When I run a simple code example, I get an error in the subroutine:
    _dl_debug_initialize

    at line:
    if (r->r_map == NULL || ldbase != 0)

    I don't understand what happens.
    The same source code, with a different QT version (QT 4.8) and a different toolchain (for kernel version 3 instead of 4), runs fine.

    I understand it is impossible to provide me big hints, but anyone had similar problems?
    Here is the output of debugger windows.

     --- token barrier ---
    dNOTE: INFERIOR RUN REQUESTED
    sRun requested...
    dState changed from InferiorStopOk(14) to InferiorRunRequested(10) [master]
    sRunning requested...
    <2460-exec-continue
    >2460^running
    dNOTE: INFERIOR RUN OK
    sRunning.
    dState changed from InferiorRunRequested(10) to InferiorRunOk(11) [master]
    >*running,thread-id="all"
    dNOTE: INFERIOR STILL RUNNING IN STATE InferiorRunOk.
    
    >~"\nProgram received signal "
    >~"SIGSEGV, Segmentation fault.\n"
    >~"_dl_debug_initialize (ldbase=4294967292, ns=195720) at dl-debug.c:55\n"
    >~"55\t  if (r->r_map == NULL || ldbase != 0)\n"
    >*stopped,reason="signal-received",signal-name="SIGSEGV",signal-meaning="Segmentation fault",frame={addr="0x76fdfcbc",func="_dl_debug_initialize",args=[{name="ldbase",value="4294967292"},{name="ns",value="195720"}],file="dl-debug.c",fullname="/opt/nobuos-x11/4.1.15-1.2.0/sysroots/cortexa9hf-vfp-neon-nobuos-linux-gnueabi/usr/src/debug/glibc/2.22-r0/git/elf/dl-debug.c",line="55"},thread-id="1",stopped-threads="all",core="0"
    dNOTE: INFERIOR SPONTANEOUS STOP
    sStopped.
    dState changed from InferiorRunOk(11) to InferiorStopOk(14) [master]
    dHANDLING SIGNAL SIGSEGV
    sStopped: Segmentation fault (Signal SIGSEGV).
    
    <2461-thread-info
    >2461^done,threads=[{id="1",target-id="Thread 1171.1171",frame={level="0",addr="0x76fdfcbc",func="_dl_debug_initialize",args=[{name="ldbase",value="4294967292"},{name="ns",value="195720"}],file="dl-debug.c",fullname="/opt/nobuos-x11/4.1.15-1.2.0/sysroots/cortexa9hf-vfp-neon-nobuos-linux-gnueabi/usr/src/debug/glibc/2.22-r0/git/elf/dl-debug.c",line="55"},state="stopped",core="0"}],current-thread-id="1"
    <2462threadnames 20
    <2463python theDumper.fetchStack({"limit":20,"nativemixed":0,"token":2463})
    
    >&"threadnames 20\n"
    >~"[]\n"
    >2462^done
    
    >&"python theDumper.fetchStack({\"limit\":20,\"nativemixed\":0,\"token\":2463})\n"
    >~"frames=[frame={level=\"0\",address=\"0x76fdfcbc\",function=\"_dl_debug_initialize\",file=\"/opt/nobuos-x11/4.1.15-1.2.0/sysroots/cortexa9hf-vfp-neon-nobuos-linux-gnueabi/usr/src/debug/glibc/2.22-r0/git/elf/dl-debug.c\",line=\"55\",module=\"/opt/nobuos-x11/4.1.15-1.2.0/sysroots/cortexa9hf-vfp-neon-nobuos-linux-gnueabi/lib/.debug/ld-2.22.so\",language=\"c\"},frame={level=\"1\",address=\"0x76fd2118\",function=\"dl_main\",file=\"/opt/nobuos-x11/4.1.15-1.2.0/sysroots/cortexa9hf-vfp-neon-nobuos-linux-gnueabi/usr/src/debug/glibc/2.22-r0/git/elf/rtld.c\",line=\"1463\",module=\"/opt/nobuos-x11/4.1.15-1.2.0/sysroots/cortexa9hf-vfp-neon-nobuos-linux-gnueabi/lib/.debug/ld-2.22.so\",language=\"c\"},frame={level=\"2\",address=\"0x76fe6c24\",function=\"_dl_sysdep_start\",file=\"/opt/nobuos-x11/4.1.15-1.2.0/sysroots/cortexa9hf-vfp-neon-nobuos-linux-gnueabi/usr/src/debug/glibc/2.22-r0/git/elf/dl-sysdep.c\",line=\"249\",module=\"/opt/nobuos-x11/4.1.15-1.2.0/sysroots/cortexa9hf-vfp-neon-nobuos-linux-gnueabi/lib/.debug/ld-2.22.so\",language=\"c\"},frame={level=\"3\",address=\"0x76fd3fcc\",function=\"_dl_start_final\",file=\"/opt/nobuos-x11/4.1.15-1.2.0/sysroots/cortexa9hf-vfp-neon-nobuos-linux-gnueabi/usr/src/debug/glibc/2.22-r0/git/elf/rtld.c\",line=\"309\",module=\"/opt/nobuos-x11/4.1.15-1.2.0/sysroots/cortexa9hf-vfp-neon-nobuos-linux-gnueabi/lib/.debug/ld-2.22.so\",language=\"c\"},frame={level=\"4\",address=\"0x76fd3fcc\",function=\"_dl_start\",file=\"/opt/nobuos-x11/4.1.15-1.2.0/sysroots/cortexa9hf-vfp-neon-nobuos-linux-gnueabi/usr/src/debug/glibc/2.22-r0/git/elf/rtld.c\",line=\"415\",module=\"/opt/nobuos-x11/4.1.15-1.2.0/sysroots/cortexa9hf-vfp-neon-nobuos-linux-gnueabi/lib/.debug/ld-2.22.so\",language=\"c\"},frame={level=\"5\",address=\"0x76fcfb10\",function=\"_start\",file=\"\",line=\"0\",module=\"\",language=\"c\"}]\n"
    >2463^done
    <2464-stack-select-frame 0
    <2465python theDumper.fetchVariables({"autoderef":1,"context":"","displaystringlimit":"100","dyntype":1,"expanded":["return","watch","local","inspect"],"fancy":1,"formats":{},"nativemixed":0,"partialvar":"","passexceptions":0,"qobjectnames":0,"resultvarname":"","stringcutoff":"10000","token":2465,"typeformats":{},"watchers":[{"exp":"722d3e725f6d6170","iname":"watch.0"}]})
    
    >2464^done
    
    >&"python theDumper.fetchVariables({\"autoderef\":1,\"context\":\"\",\"displaystringlimit\":\"100\",\"dyntype\":1,\"expanded\":[\"return\",\"watch\",\"local\",\"inspect\"],\"fancy\":1,\"formats\":{},\"nativemixed\":0,\"partialvar\":\"\",\"passexceptions\":0,\"qobjectnames\":0,\"resultvarname\":\"\",\"stringcutoff\":\"10000\",\"token\":2465,\"typeformats\":{},\"watchers\":[{\"exp\":\"722d3e725f6d6170\",\"iname\":\"watch.0\"}]})\n"
    >~"data=[{iname=\"local.ldbase\",name=\"ldbase\",numchild=\"0\",type=\"Elf32_Addr\",value=\"4294967292\",},{iname=\"local.ns\",name=\"ns\",numchild=\"0\",type=\"Lmid_t\",value=\"195720\",},{iname=\"local.r\",name=\"r\",numchild=\"0\",type=\"r_debug *\",value=\"0x77e2e8e8\",address=\"0x77e2e8e8\",},{iname=\"watch.0\",wname=\"722d3e725f6d6170\",numchild=\"0\",type=\" \",value=\"<no such value>\",},],typeinfo=[{name=\"73747275637420725f6465627567202a\",size=\"4\"}],partial=\"0\"\n"
    >~"\"[{}, [['locals', 377], ['all-local.ldbase', 112], ['all-local.ns', 99], ['all-local.r', 1178], ['watches', 882], ['safePrint', 169]]]\"\n"
    >2465^done
     <Rebuild Watchmodel 39 @ 18:51:45.285 [8560ms] >
    sFinished retrieving data
    
    

    Furthermore, another SW built with the toolchain and GDB settings works fine.
    Best regards.
    Giovanni

    jsulmJ 1 Reply Last reply
    0
    • G Giox79

      Good morning,
      I'm using the following setup:

      • QT Creator 4.1.0
      • gdb 7.9.1
      • uP iMX6
      • Qt Version 5.5.1 on target

      When I run a simple code example, I get an error in the subroutine:
      _dl_debug_initialize

      at line:
      if (r->r_map == NULL || ldbase != 0)

      I don't understand what happens.
      The same source code, with a different QT version (QT 4.8) and a different toolchain (for kernel version 3 instead of 4), runs fine.

      I understand it is impossible to provide me big hints, but anyone had similar problems?
      Here is the output of debugger windows.

       --- token barrier ---
      dNOTE: INFERIOR RUN REQUESTED
      sRun requested...
      dState changed from InferiorStopOk(14) to InferiorRunRequested(10) [master]
      sRunning requested...
      <2460-exec-continue
      >2460^running
      dNOTE: INFERIOR RUN OK
      sRunning.
      dState changed from InferiorRunRequested(10) to InferiorRunOk(11) [master]
      >*running,thread-id="all"
      dNOTE: INFERIOR STILL RUNNING IN STATE InferiorRunOk.
      
      >~"\nProgram received signal "
      >~"SIGSEGV, Segmentation fault.\n"
      >~"_dl_debug_initialize (ldbase=4294967292, ns=195720) at dl-debug.c:55\n"
      >~"55\t  if (r->r_map == NULL || ldbase != 0)\n"
      >*stopped,reason="signal-received",signal-name="SIGSEGV",signal-meaning="Segmentation fault",frame={addr="0x76fdfcbc",func="_dl_debug_initialize",args=[{name="ldbase",value="4294967292"},{name="ns",value="195720"}],file="dl-debug.c",fullname="/opt/nobuos-x11/4.1.15-1.2.0/sysroots/cortexa9hf-vfp-neon-nobuos-linux-gnueabi/usr/src/debug/glibc/2.22-r0/git/elf/dl-debug.c",line="55"},thread-id="1",stopped-threads="all",core="0"
      dNOTE: INFERIOR SPONTANEOUS STOP
      sStopped.
      dState changed from InferiorRunOk(11) to InferiorStopOk(14) [master]
      dHANDLING SIGNAL SIGSEGV
      sStopped: Segmentation fault (Signal SIGSEGV).
      
      <2461-thread-info
      >2461^done,threads=[{id="1",target-id="Thread 1171.1171",frame={level="0",addr="0x76fdfcbc",func="_dl_debug_initialize",args=[{name="ldbase",value="4294967292"},{name="ns",value="195720"}],file="dl-debug.c",fullname="/opt/nobuos-x11/4.1.15-1.2.0/sysroots/cortexa9hf-vfp-neon-nobuos-linux-gnueabi/usr/src/debug/glibc/2.22-r0/git/elf/dl-debug.c",line="55"},state="stopped",core="0"}],current-thread-id="1"
      <2462threadnames 20
      <2463python theDumper.fetchStack({"limit":20,"nativemixed":0,"token":2463})
      
      >&"threadnames 20\n"
      >~"[]\n"
      >2462^done
      
      >&"python theDumper.fetchStack({\"limit\":20,\"nativemixed\":0,\"token\":2463})\n"
      >~"frames=[frame={level=\"0\",address=\"0x76fdfcbc\",function=\"_dl_debug_initialize\",file=\"/opt/nobuos-x11/4.1.15-1.2.0/sysroots/cortexa9hf-vfp-neon-nobuos-linux-gnueabi/usr/src/debug/glibc/2.22-r0/git/elf/dl-debug.c\",line=\"55\",module=\"/opt/nobuos-x11/4.1.15-1.2.0/sysroots/cortexa9hf-vfp-neon-nobuos-linux-gnueabi/lib/.debug/ld-2.22.so\",language=\"c\"},frame={level=\"1\",address=\"0x76fd2118\",function=\"dl_main\",file=\"/opt/nobuos-x11/4.1.15-1.2.0/sysroots/cortexa9hf-vfp-neon-nobuos-linux-gnueabi/usr/src/debug/glibc/2.22-r0/git/elf/rtld.c\",line=\"1463\",module=\"/opt/nobuos-x11/4.1.15-1.2.0/sysroots/cortexa9hf-vfp-neon-nobuos-linux-gnueabi/lib/.debug/ld-2.22.so\",language=\"c\"},frame={level=\"2\",address=\"0x76fe6c24\",function=\"_dl_sysdep_start\",file=\"/opt/nobuos-x11/4.1.15-1.2.0/sysroots/cortexa9hf-vfp-neon-nobuos-linux-gnueabi/usr/src/debug/glibc/2.22-r0/git/elf/dl-sysdep.c\",line=\"249\",module=\"/opt/nobuos-x11/4.1.15-1.2.0/sysroots/cortexa9hf-vfp-neon-nobuos-linux-gnueabi/lib/.debug/ld-2.22.so\",language=\"c\"},frame={level=\"3\",address=\"0x76fd3fcc\",function=\"_dl_start_final\",file=\"/opt/nobuos-x11/4.1.15-1.2.0/sysroots/cortexa9hf-vfp-neon-nobuos-linux-gnueabi/usr/src/debug/glibc/2.22-r0/git/elf/rtld.c\",line=\"309\",module=\"/opt/nobuos-x11/4.1.15-1.2.0/sysroots/cortexa9hf-vfp-neon-nobuos-linux-gnueabi/lib/.debug/ld-2.22.so\",language=\"c\"},frame={level=\"4\",address=\"0x76fd3fcc\",function=\"_dl_start\",file=\"/opt/nobuos-x11/4.1.15-1.2.0/sysroots/cortexa9hf-vfp-neon-nobuos-linux-gnueabi/usr/src/debug/glibc/2.22-r0/git/elf/rtld.c\",line=\"415\",module=\"/opt/nobuos-x11/4.1.15-1.2.0/sysroots/cortexa9hf-vfp-neon-nobuos-linux-gnueabi/lib/.debug/ld-2.22.so\",language=\"c\"},frame={level=\"5\",address=\"0x76fcfb10\",function=\"_start\",file=\"\",line=\"0\",module=\"\",language=\"c\"}]\n"
      >2463^done
      <2464-stack-select-frame 0
      <2465python theDumper.fetchVariables({"autoderef":1,"context":"","displaystringlimit":"100","dyntype":1,"expanded":["return","watch","local","inspect"],"fancy":1,"formats":{},"nativemixed":0,"partialvar":"","passexceptions":0,"qobjectnames":0,"resultvarname":"","stringcutoff":"10000","token":2465,"typeformats":{},"watchers":[{"exp":"722d3e725f6d6170","iname":"watch.0"}]})
      
      >2464^done
      
      >&"python theDumper.fetchVariables({\"autoderef\":1,\"context\":\"\",\"displaystringlimit\":\"100\",\"dyntype\":1,\"expanded\":[\"return\",\"watch\",\"local\",\"inspect\"],\"fancy\":1,\"formats\":{},\"nativemixed\":0,\"partialvar\":\"\",\"passexceptions\":0,\"qobjectnames\":0,\"resultvarname\":\"\",\"stringcutoff\":\"10000\",\"token\":2465,\"typeformats\":{},\"watchers\":[{\"exp\":\"722d3e725f6d6170\",\"iname\":\"watch.0\"}]})\n"
      >~"data=[{iname=\"local.ldbase\",name=\"ldbase\",numchild=\"0\",type=\"Elf32_Addr\",value=\"4294967292\",},{iname=\"local.ns\",name=\"ns\",numchild=\"0\",type=\"Lmid_t\",value=\"195720\",},{iname=\"local.r\",name=\"r\",numchild=\"0\",type=\"r_debug *\",value=\"0x77e2e8e8\",address=\"0x77e2e8e8\",},{iname=\"watch.0\",wname=\"722d3e725f6d6170\",numchild=\"0\",type=\" \",value=\"<no such value>\",},],typeinfo=[{name=\"73747275637420725f6465627567202a\",size=\"4\"}],partial=\"0\"\n"
      >~"\"[{}, [['locals', 377], ['all-local.ldbase', 112], ['all-local.ns', 99], ['all-local.r', 1178], ['watches', 882], ['safePrint', 169]]]\"\n"
      >2465^done
       <Rebuild Watchmodel 39 @ 18:51:45.285 [8560ms] >
      sFinished retrieving data
      
      

      Furthermore, another SW built with the toolchain and GDB settings works fine.
      Best regards.
      Giovanni

      jsulmJ Offline
      jsulmJ Offline
      jsulm
      Lifetime Qt Champion
      wrote on last edited by
      #2

      @Giox79 said in Problem while debugging on iMX6 target:

      r

      Looks like dereferencing a NULL or dangling pointer. You should check the value of r in that line: is it NULL?
      Is _dl_debug_initialize part of that example? If so you can place a

      qDebug() << r;
      

      just before the if.

      https://forum.qt.io/topic/113070/qt-code-of-conduct

      1 Reply Last reply
      0
      • G Offline
        G Offline
        Giox79
        wrote on last edited by
        #3

        Thank you jsulm, it seems tha I'm not able to put a qDebug in this source code line.
        I will try in another way.
        You are able to use qDebug symbol in this subroutine?
        Gio

        1 Reply Last reply
        0
        • G Offline
          G Offline
          Giox79
          wrote on last edited by Giox79
          #4

          Good morning Mr jsulm,
          looking at the debugger page, it seems that the symbol has a valid value, not null.

          r Value is 0x77e2e8e8
          while
          r->r_map value is <no such value>

          and

          ldbase is
          1996288000

          It seems the camera is r pointer is no longer valid (because of r->r_map is not valid)
          Gio

          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