Bonjour j'ai un bug avec gdbserver / gdb-multiarch

J'ai une cible sur armhf (ubuntu avec un nfsroot)
Un host sur amd64 (Debian)

Le problème est que gdb-multiarch retourne

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
Reading /lib/.debug/ld-2.27.so from remote target...
(no debugging symbols found)...done.
Mais le plus étrange est que si je me reconnecte a la cible et je relance tout fonctionne parfaitement

voici un exemple

Target
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
gdbserver 192.168.42.214:11111 ./bouchoniqati3 
Process ./bouchoniqati3 created; pid = 15631
Listening on port 11111
Remote debugging from host 192.168.42.28

Child terminated with signal = 0xb (SIGSEGV)
Host
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
gdb-multiarch     
GNU gdb (Debian 7.12-6+b2) 7.12.0.20161007-git
Copyright (C) 2016 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".
(gdb) target remote 192.168.42.214:11111
Remote debugging using 192.168.42.214:11111
Reading /home/linaro/bouchoniqati3 from remote target...
warning: File transfers from remote targets can be slow. Use "set sysroot" to access files locally instead.
Reading /home/linaro/bouchoniqati3 from remote target...
Reading symbols from target:/home/linaro/bouchoniqati3...done.
Reading /lib/ld-linux-armhf.so.3 from remote target...
Reading /lib/ld-linux-armhf.so.3 from remote target...
Reading symbols from target:/lib/ld-linux-armhf.so.3...Reading /lib/ld-2.27.so from remote target...
Reading /lib/.debug/ld-2.27.so from remote target...
(no debugging symbols found)...done.
0x76fd6b80 in ?? () from target:/lib/ld-linux-armhf.so.3
(gdb) continue
Continuing.

Program received signal SIGSEGV, Segmentation fault.
0x76fd8f4e in ?? () from target:/lib/ld-linux-armhf.so.3
(gdb) continue
Continuing.

Program terminated with signal SIGSEGV, Segmentation fault.
The program no longer exists.
je relance sur la cible

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
gdbserver 192.168.42.214:11111 ./bouchoniqati3 
Process ./bouchoniqati3 created; pid = 15638
Listening on port 11111
Remote debugging from host 192.168.42.28
Remote side has terminated connection.  GDBserver will reopen the connection.
Listening on port 11111
 
Remote debugging from host 192.168.42.28

sur le host je continue dans le même gdb-multiarch
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
(gdb) target remote 192.168.42.214:11111
`target:/home/linaro/bouchoniqati3' has disappeared; keeping its symbols.
Remote debugging using 192.168.42.214:11111
warning: Unable to find dynamic linker breakpoint function.
GDB will be unable to debug shared library initializers
and track explicitly loaded dynamic code.

Program received signal SIGTRAP, Trace/breakpoint trap.
0x76fd6b80 in ?? ()
(gdb) continue
Continuing.
Reading /usr/local/qt5pi/lib/libQt5Widgets.so.5 from remote target...
Reading /usr/local/qt5pi/lib/libQt5Gui.so.5 from remote target...
Reading /usr/local/qt5pi/lib/libQt5Network.so.5 from remote target...
Reading /usr/local/qt5pi/lib/libQt5Bluetooth.so.5 from remote target...
Reading /usr/local/qt5pi/lib/libQt5SerialPort.so.5 from remote target...
Reading /usr/local/qt5pi/lib/libQt5Core.so.5 from remote target...
Reading /usr/lib/arm-linux-gnueabihf/libGLESv2.so.2 from remote target...
Reading /lib/arm-linux-gnueabihf/libpthread.so.0 from remote target...
Reading /usr/lib/arm-linux-gnueabihf/libstdc++.so.6 from remote target...
Reading /lib/arm-linux-gnueabihf/libm.so.6 from remote target...
Reading /lib/arm-linux-gnueabihf/libgcc_s.so.1 from remote target...
Reading /lib/arm-linux-gnueabihf/libc.so.6 from remote target...
Reading /usr/local/qt5pi/lib/libQt5Concurrent.so.5 from remote target...
Reading /usr/local/qt5pi/lib/libQt5DBus.so.5 from remote target...
Reading /lib/arm-linux-gnueabihf/libdl.so.2 from remote target...
Reading /lib/ld-linux-armhf.so.3 from remote target...
Reading /usr/lib/arm-linux-gnueabihf/libGLdispatch.so.0 from remote target...
Reading /usr/lib/arm-linux-gnueabihf/a1e6f126e1ac07675031d36cba7fca29fbb7fb.debug from remote target...
Reading /usr/lib/arm-linux-gnueabihf/.debug/a1e6f126e1ac07675031d36cba7fca29fbb7fb.debug from remote target...
Reading /lib/arm-linux-gnueabihf/3351cbf918fa4aa6a75a4f28f6ac596979ec3a.debug from remote target...
Reading /lib/arm-linux-gnueabihf/.debug/3351cbf918fa4aa6a75a4f28f6ac596979ec3a.debug from remote target...
Reading /usr/lib/arm-linux-gnueabihf/bf5d5c0d7a64902d14e37072615c356b7811a3.debug from remote target...
Reading /usr/lib/arm-linux-gnueabihf/.debug/bf5d5c0d7a64902d14e37072615c356b7811a3.debug from remote target...
Reading /lib/arm-linux-gnueabihf/libm-2.27.so from remote target...
Reading /lib/arm-linux-gnueabihf/.debug/libm-2.27.so from remote target...
Reading /lib/arm-linux-gnueabihf/6d60f9be392584b1eed167eb5f40cfa3baab19.debug from remote target...
Reading /lib/arm-linux-gnueabihf/.debug/6d60f9be392584b1eed167eb5f40cfa3baab19.debug from remote target...
Reading /lib/arm-linux-gnueabihf/libc-2.27.so from remote target...
Reading /lib/arm-linux-gnueabihf/.debug/libc-2.27.so from remote target...
Reading /lib/arm-linux-gnueabihf/libdl-2.27.so from remote target...
Reading /lib/arm-linux-gnueabihf/.debug/libdl-2.27.so from remote target...
Reading /lib/ld-2.27.so from remote target...
Reading /lib/.debug/ld-2.27.so from remote target...
Reading /usr/lib/arm-linux-gnueabihf/8504794c02b6136e7ee065edd3b094735b0d2a.debug from remote target...
Reading /usr/lib/arm-linux-gnueabihf/.debug/8504794c02b6136e7ee065edd3b094735b0d2a.debug from remote target...
[New Thread 15612.15621]
^C[New Thread 15612.15613]
[New Thread 15612.15614]
[New Thread 15612.15616]
[New Thread 15612.15617]
Comme on peut le voir la 2 eme fois il trouve les symbole sans problème

Si je lance gdb directement sur la cible tous fonctionne

(Mon but est de faire fonctionné gdb dans QTCreator mais vue que ça ne fonctionnais pas j'ai tenté de le lancé manuellement et j'ai trouvé ce problème.)

Si vous avez une idée comment résoudre le problème s'est volontiers

J'ai déjà tenté
Code : Sélectionner tout - Visualiser dans une fenêtre à part
set sysroot /mon home/colibri/nfsroot/
le chargement des symboles est plus rapide mais ça ne résout pas le problème


autre info
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
gdbserver --version
GNU gdbserver (Ubuntu 8.1-0ubuntu3) 8.1.0.20180409-git
Copyright (C) 2018 Free Software Foundation, Inc.
gdbserver is free software, covered by the GNU General Public License.
This gdbserver was configured as "arm-linux-gnueabihf"
j'avais aussi testé avec une ancienne version

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
gdb-multiarch -v
GNU gdb (Debian 7.12-6+b2) 7.12.0.20161007-git
Copyright (C) 2016 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".