This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

shared lib dos filename style - one more question


Hi,

I got a lot of help from several of you recently to point me in the
right direction. I am trying to get gdb to do the right thing when the
target is running on Windows Mobile (DOS filename style) and the host is
different (e.g. Linux).

This works, and I think I am close to having my patches in such a shape
that the libiberty maintainers will like them.

But the drawback for the gdb user is still that changing the variable
that steers this functionality often comes too late. The names are
processed when connecting to the target, changing the variable doesn't
affect gdb's operation any more. (See the session below, it also shows a
rather ugly workaround.)

My question : can anyone point me to where I should rerun some gdb
function when the gdb user changes the value of this variable ? I
already figured out that the shlib info gets passed when "solib_add" is
called, but is that what I need to rerun ?

Thanks,

	Danny

pavilion: {580} ./gdb ~/tmp/arm/test/remedy.nl/shlib/4.stdc
++/usedemo.exe
GNU gdb (GDB) 6.8.50.20090905-cvs
Copyright (C) 2009 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 "--host=i686-pc-linux-gnu
--target=i386-mingw32ce".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /home/danny/tmp/arm/test/remedy.nl/shlib/4.stdc
++/usedemo.exe...done.
(gdb) set dos_based_file_system off
(gdb) set
solib-search-path /home/danny/tmp/arm/test/remedy.nl/shlib/4.stdc
++:/opt/x86mingw32ce/bin:/opt/x86mingw32ce/i386-mingw32ce/lib
(gdb) target remote ebox:9999
Remote debugging using ebox:9999
Error while mapping shared library sections:
\network\x86\libgcc_s_sjlj-1.dll: No such file or directory.
Error while mapping shared library sections:
\network\x86\libstdc++-6.dll: No such file or directory.
Error while mapping shared library sections:
\network\x86\libx.dll: No such file or directory.
Error while mapping shared library sections:
coredll.dll: No such file or directory.
Symbol file not found for \network\x86\libgcc_s_sjlj-1.dll
Symbol file not found for \network\x86\libstdc++-6.dll
Symbol file not found for \network\x86\libx.dll
Symbol file not found for coredll.dll
WinMainCRTStartup (hInst=0x5f0000e, hPrevInst=0x0, lpCmdLine=0x3601fc70
L"", nCmdShow=5)

at /home/danny/src/cegcc/svn.sf.net/cegcc/trunk/cegcc/src/mingw/crt3.c:35
35      {
(gdb) info share
>From        To          Syms Read   Shared Object Library
                        No          \network\x86\libgcc_s_sjlj-1.dll
                        No          \network\x86\libstdc++-6.dll
                        No          \network\x86\libx.dll
                        No          coredll.dll
(gdb) set dos_based_file_system on

Note 1 : here is where I would like to interfere so the paths get
processed again, with the new value of have_dos_based_file_system .


(gdb) info share
>From        To          Syms Read   Shared Object Library
                        No          \network\x86\libgcc_s_sjlj-1.dll
                        No          \network\x86\libstdc++-6.dll
                        No          \network\x86\libx.dll
                        No          coredll.dll

Note 2 : disconnecting and connecting again is a workaround for not
having the functionality I still lack now.


(gdb) disconnect
Ending remote debugging.
(gdb) set dos_based_file_system on
(gdb) target remote ebox:9999
Remote debugging using ebox:9999
Error while mapping shared library sections:
coredll.dll: No such file or directory.
Reading symbols from /opt/x86mingw32ce/bin/libgcc_s_sjlj-1.dll...done.
Loaded symbols for /opt/x86mingw32ce/bin/libgcc_s_sjlj-1.dll
Reading symbols from /opt/x86mingw32ce/i386-mingw32ce/lib/libstdc
++-6.dll...done.
Loaded symbols for /opt/x86mingw32ce/i386-mingw32ce/lib/libstdc++-6.dll
Reading symbols from /home/danny/tmp/arm/test/remedy.nl/shlib/4.stdc
++/libx.dll...done.
Loaded symbols for /home/danny/tmp/arm/test/remedy.nl/shlib/4.stdc
++/libx.dll
Symbol file not found for coredll.dll
WinMainCRTStartup (hInst=0x5f0000e, hPrevInst=0x0, lpCmdLine=0x3601fc70
L"", nCmdShow=5)

at /home/danny/src/cegcc/svn.sf.net/cegcc/trunk/cegcc/src/mingw/crt3.c:35
35      {
(gdb) info share
>From        To          Syms Read   Shared Object Library
0x42371000  0x4237c1fc
Yes         /opt/x86mingw32ce/bin/libgcc_s_sjlj-1.dll
0x41f01000  0x41fd2988
Yes         /opt/x86mingw32ce/i386-mingw32ce/lib/libstdc++-6.dll
0x41ee1000  0x41ee7068
Yes         /home/danny/tmp/arm/test/remedy.nl/shlib/4.stdc++/libx.dll
                        No          coredll.dll
(gdb) 
-- 
Danny Backx ; danny.backx - at - scarlet.be ; http://danny.backx.info


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]