Warning from GDB 8.3 used at the command line

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

Warning from GDB 8.3 used at the command line

John Dallman
Preface: I am not producing an Android app. I work for a software component business, creating shared libraries, compiled from C and C++ code, for use in third-party customers' apps. I test my libraries in a command-line test harness, which I run in the ADB shell. I am only producing software for 64-bit ARM, because none of the customers want 32-bit code. 

The GDB 8.3 from NDK21b produces this warning when I type "cont" to it, to start running my test harness under GDB. 

warning: .dynamic section for "target:/data/local/tmp/local_parasolid/users/kerman/kid.out" is not at the expected address (wrong library or version mismatch?)

The debugger works OK. Is this a warning I should worry about? 

The full GDB output is:

GNU gdb (GDB) 8.3
Copyright (C) 2019 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.

For help, type "help".
Type "apropos word" to search for commands related to "word".
Remote debugging using localhost:12013
Reading /data/local/tmp/local_parasolid/users/kerman/kid.out from remote target...
warning: File transfers from remote targets can be slow. Use "set sysroot" to access files locally instead.
Reading /data/local/tmp/local_parasolid/users/kerman/kid.out from remote target...
Reading symbols from target:/data/local/tmp/local_parasolid/users/kerman/kid.out...
Reading /system/bin/linker64 from remote target...
Reading /system/bin/linker64 from remote target...
Reading symbols from target:/system/bin/linker64...
(No debugging symbols found in target:/system/bin/linker64)
0x0000007fbf5c7058 in __dl__start () from target:/system/bin/linker64
(gdb) cont
Continuing.
Reading /data/local/tmp/local_parasolid/users/kerman/kid.out from remote target...
warning: .dynamic section for "target:/data/local/tmp/local_parasolid/users/kerman/kid.out" is not at the expected address (wrong library or version mismatch?)
Reading /system/lib64/libm.so from remote target...
Reading /system/lib64/libdl.so from remote target...
Reading /system/lib64/libc.so from remote target...
Reading /system/lib64/libnetd_client.so from remote target...
Reading /system/lib64/libc++.so from remote target...
[Inferior 1 (process 14011) exited normally]

Thanks,

John Dallman

--
You received this message because you are subscribed to the Google Groups "android-ndk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/android-ndk/CAH1xqg%3DxXeO2hVJT%2B2coReLfk4auXy9Bfw%2BuF0qRNKOvPB7mjQ%40mail.gmail.com.
Reply | Threaded
Open this post in threaded view
|

Re: Warning from GDB 8.3 used at the command line

Dan Albert
+hhb

On Tue, Jun 23, 2020, 07:49 John Dallman <[hidden email]> wrote:
Preface: I am not producing an Android app. I work for a software component business, creating shared libraries, compiled from C and C++ code, for use in third-party customers' apps. I test my libraries in a command-line test harness, which I run in the ADB shell. I am only producing software for 64-bit ARM, because none of the customers want 32-bit code. 

The GDB 8.3 from NDK21b produces this warning when I type "cont" to it, to start running my test harness under GDB. 

warning: .dynamic section for "target:/data/local/tmp/local_parasolid/users/kerman/kid.out" is not at the expected address (wrong library or version mismatch?)

The debugger works OK. Is this a warning I should worry about? 

The full GDB output is:

GNU gdb (GDB) 8.3
Copyright (C) 2019 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.

For help, type "help".
Type "apropos word" to search for commands related to "word".
Remote debugging using localhost:12013
Reading /data/local/tmp/local_parasolid/users/kerman/kid.out from remote target...
warning: File transfers from remote targets can be slow. Use "set sysroot" to access files locally instead.
Reading /data/local/tmp/local_parasolid/users/kerman/kid.out from remote target...
Reading symbols from target:/data/local/tmp/local_parasolid/users/kerman/kid.out...
Reading /system/bin/linker64 from remote target...
Reading /system/bin/linker64 from remote target...
Reading symbols from target:/system/bin/linker64...
(No debugging symbols found in target:/system/bin/linker64)
0x0000007fbf5c7058 in __dl__start () from target:/system/bin/linker64
(gdb) cont
Continuing.
Reading /data/local/tmp/local_parasolid/users/kerman/kid.out from remote target...
warning: .dynamic section for "target:/data/local/tmp/local_parasolid/users/kerman/kid.out" is not at the expected address (wrong library or version mismatch?)
Reading /system/lib64/libm.so from remote target...
Reading /system/lib64/libdl.so from remote target...
Reading /system/lib64/libc.so from remote target...
Reading /system/lib64/libnetd_client.so from remote target...
Reading /system/lib64/libc++.so from remote target...
[Inferior 1 (process 14011) exited normally]

Thanks,

John Dallman

--
You received this message because you are subscribed to the Google Groups "android-ndk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/android-ndk/CAH1xqg%3DxXeO2hVJT%2B2coReLfk4auXy9Bfw%2BuF0qRNKOvPB7mjQ%40mail.gmail.com.

--
You received this message because you are subscribed to the Google Groups "android-ndk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/android-ndk/CAFVaGht9nS3ws19U65GUNN7Ty7cvmVAszv%3D-kSSy5ZadZYgu9Q%40mail.gmail.com.
Reply | Threaded
Open this post in threaded view
|

Re: Warning from GDB 8.3 used at the command line

Haibo Huang
In reply to this post by John Dallman
This usually happens when the library version doesn't match. But in your case the binary is pulled directly from the device so I'm not sure...
Is the binary built with debug symbols?

On Tuesday, June 23, 2020 at 7:49:29 AM UTC-7, John Dallman wrote:
Preface: I am not producing an Android app. I work for a software component business, creating shared libraries, compiled from C and C++ code, for use in third-party customers' apps. I test my libraries in a command-line test harness, which I run in the ADB shell. I am only producing software for 64-bit ARM, because none of the customers want 32-bit code. 

The GDB 8.3 from NDK21b produces this warning when I type "cont" to it, to start running my test harness under GDB. 

warning: .dynamic section for "target:/data/local/tmp/local_parasolid/users/kerman/kid.out" is not at the expected address (wrong library or version mismatch?)

The debugger works OK. Is this a warning I should worry about? 

The full GDB output is:

GNU gdb (GDB) 8.3
Copyright (C) 2019 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <<a href="http://gnu.org/licenses/gpl.html" target="_blank" rel="nofollow" onmousedown="this.href=&#39;http://www.google.com/url?q\x3dhttp%3A%2F%2Fgnu.org%2Flicenses%2Fgpl.html\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNEXF3KHaoELgfUNqRkyqzdC_wxyyQ&#39;;return true;" onclick="this.href=&#39;http://www.google.com/url?q\x3dhttp%3A%2F%2Fgnu.org%2Flicenses%2Fgpl.html\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNEXF3KHaoELgfUNqRkyqzdC_wxyyQ&#39;;return true;">http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<<a href="http://www.gnu.org/software/gdb/bugs/" target="_blank" rel="nofollow" onmousedown="this.href=&#39;http://www.google.com/url?q\x3dhttp%3A%2F%2Fwww.gnu.org%2Fsoftware%2Fgdb%2Fbugs%2F\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNFr7qQsaJHeeKGQFPJt743h4gKH0Q&#39;;return true;" onclick="this.href=&#39;http://www.google.com/url?q\x3dhttp%3A%2F%2Fwww.gnu.org%2Fsoftware%2Fgdb%2Fbugs%2F\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNFr7qQsaJHeeKGQFPJt743h4gKH0Q&#39;;return true;">http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
    <<a href="http://www.gnu.org/software/gdb/documentation/" target="_blank" rel="nofollow" onmousedown="this.href=&#39;http://www.google.com/url?q\x3dhttp%3A%2F%2Fwww.gnu.org%2Fsoftware%2Fgdb%2Fdocumentation%2F\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNF52AYMmyI0vm43uXmc3ffy5F1VPQ&#39;;return true;" onclick="this.href=&#39;http://www.google.com/url?q\x3dhttp%3A%2F%2Fwww.gnu.org%2Fsoftware%2Fgdb%2Fdocumentation%2F\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNF52AYMmyI0vm43uXmc3ffy5F1VPQ&#39;;return true;">http://www.gnu.org/software/gdb/documentation/>.

For help, type "help".
Type "apropos word" to search for commands related to "word".
Remote debugging using localhost:12013
Reading /data/local/tmp/local_parasolid/users/kerman/kid.out from remote target...
warning: File transfers from remote targets can be slow. Use "set sysroot" to access files locally instead.
Reading /data/local/tmp/local_parasolid/users/kerman/kid.out from remote target...
Reading symbols from target:/data/local/tmp/local_parasolid/users/kerman/kid.out...
Reading /system/bin/linker64 from remote target...
Reading /system/bin/linker64 from remote target...
Reading symbols from target:/system/bin/linker64...
(No debugging symbols found in target:/system/bin/linker64)
0x0000007fbf5c7058 in __dl__start () from target:/system/bin/linker64
(gdb) cont
Continuing.
Reading /data/local/tmp/local_parasolid/users/kerman/kid.out from remote target...
warning: .dynamic section for "target:/data/local/tmp/local_parasolid/users/kerman/kid.out" is not at the expected address (wrong library or version mismatch?)
Reading /system/lib64/libm.so from remote target...
Reading /system/lib64/libdl.so from remote target...
Reading /system/lib64/libc.so from remote target...
Reading /system/lib64/libnetd_client.so from remote target...
Reading /system/lib64/libc++.so from remote target...
[Inferior 1 (process 14011) exited normally]

Thanks,

John Dallman

--
You received this message because you are subscribed to the Google Groups "android-ndk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/android-ndk/049070e6-4b4c-41a7-a8fd-4bdbb558714fo%40googlegroups.com.
Reply | Threaded
Open this post in threaded view
|

Re: Warning from GDB 8.3 used at the command line

John Dallman
My build system is quite unconventional: it uses the clang command line directly, and does not go near CMake, Gradle, or any of the other build systems supplied with the NDK (or SDK).  

I have not built all of the binary with debug symbols. It's large, and that would take tens of minutes. So I recompile the source files I'm interested in for the current problem with debug information, and build a binary with those object files taking precedence over the versions of them without debug symbols in an archive library (a .a file, not an Android Archive). 

Thanks,

John

On Tue, Jun 30, 2020 at 1:11 AM 'Haibo Huang' via android-ndk <[hidden email]> wrote:
This usually happens when the library version doesn't match. But in your case the binary is pulled directly from the device so I'm not sure...
Is the binary built with debug symbols?

On Tuesday, June 23, 2020 at 7:49:29 AM UTC-7, John Dallman wrote:
Preface: I am not producing an Android app. I work for a software component business, creating shared libraries, compiled from C and C++ code, for use in third-party customers' apps. I test my libraries in a command-line test harness, which I run in the ADB shell. I am only producing software for 64-bit ARM, because none of the customers want 32-bit code. 

The GDB 8.3 from NDK21b produces this warning when I type "cont" to it, to start running my test harness under GDB. 

warning: .dynamic section for "target:/data/local/tmp/local_parasolid/users/kerman/kid.out" is not at the expected address (wrong library or version mismatch?)

The debugger works OK. Is this a warning I should worry about? 

The full GDB output is:

GNU gdb (GDB) 8.3
Copyright (C) 2019 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.

For help, type "help".
Type "apropos word" to search for commands related to "word".
Remote debugging using localhost:12013
Reading /data/local/tmp/local_parasolid/users/kerman/kid.out from remote target...
warning: File transfers from remote targets can be slow. Use "set sysroot" to access files locally instead.
Reading /data/local/tmp/local_parasolid/users/kerman/kid.out from remote target...
Reading symbols from target:/data/local/tmp/local_parasolid/users/kerman/kid.out...
Reading /system/bin/linker64 from remote target...
Reading /system/bin/linker64 from remote target...
Reading symbols from target:/system/bin/linker64...
(No debugging symbols found in target:/system/bin/linker64)
0x0000007fbf5c7058 in __dl__start () from target:/system/bin/linker64
(gdb) cont
Continuing.
Reading /data/local/tmp/local_parasolid/users/kerman/kid.out from remote target...
warning: .dynamic section for "target:/data/local/tmp/local_parasolid/users/kerman/kid.out" is not at the expected address (wrong library or version mismatch?)
Reading /system/lib64/libm.so from remote target...
Reading /system/lib64/libdl.so from remote target...
Reading /system/lib64/libc.so from remote target...
Reading /system/lib64/libnetd_client.so from remote target...
Reading /system/lib64/libc++.so from remote target...
[Inferior 1 (process 14011) exited normally]

Thanks,

John Dallman

--
You received this message because you are subscribed to the Google Groups "android-ndk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/android-ndk/049070e6-4b4c-41a7-a8fd-4bdbb558714fo%40googlegroups.com.

--
You received this message because you are subscribed to the Google Groups "android-ndk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/android-ndk/CAH1xqg%3D1p%3DcpL9evrBxYoAA%3DCKEh5xO8N%2BU1%3Dh8tmfzLd37fvg%40mail.gmail.com.