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]

Re: shared lib dos filename style - one more question


No reply to the message below. I'm including my current work now. Please
comment.

	Danny

On Sat, 2009-09-26 at 15:51 +0200, Danny Backx wrote:
> 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

Attachment: gdb-diff.gz
Description: GNU Zip compressed data


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