[Bug 1173562] Re: gdb resolves symbolic links for executables in argv[0]

David Kastrup dak at gnu.org
Sun Apr 28 08:27:19 UTC 2013


Here is an example for a program relying on its argv[0] name:
/usr/bin/latex is a symbolic link to /usr/bin/pdftex, and pdftex loads a
format depending on the name under which it has been called.  As a
result,

latex '\stop'

will load the latex.fmt format and finish processing while the same will
fail under gdb since argv[0] is being passed as /usr/bin/pdftex instead
of /usr/bin/latex:

dak at lola:/tmp$ latex '\stop'
This is pdfTeX, Version 3.1415926-2.4-1.40.13 (TeX Live 2012/Debian)
 restricted \write18 enabled.
entering extended mode
LaTeX2e <2011/06/27>
Babel <v3.8m> and hyphenation patterns for english, dumylang, nohyphenation, bu
lgarian, ukrainian, russian, loaded.
No pages of output.
Transcript written on texput.log.

dak at lola:/tmp$ gdb latex
GNU gdb (GDB) 7.5.91.20130417-cvs-ubuntu
Copyright (C) 2013 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 "i686-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/bin/pdftex...(no debugging symbols found)...done.
(gdb) run '\stop'
Starting program: /usr/bin/pdftex '\stop'
This is pdfTeX, Version 3.1415926-2.4-1.40.13 (TeX Live 2012/Debian)
 restricted \write18 enabled.
entering extended mode
! Undefined control sequence.
<*> \stop
         
?

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to gdb in Ubuntu.
https://bugs.launchpad.net/bugs/1173562

Title:
  gdb resolves symbolic links for executables in argv[0]

Status in “gdb” package in Ubuntu:
  New

Bug description:
  Calling gdb on an executable that is a symbolic link will pass the
  target of the symbolic link rather than the specified link as argv[0]
  to the program.

  As a result, if the program relies on the contents of argv[0] (for
  example, for figuring out paths relative to the executable or making
  decisions based on the name the executable has been called under),
  debugging fails.

  This seems to be a problem newly introduced in Raring.

  ProblemType: Bug
  DistroRelease: Ubuntu 13.04
  Package: gdb 7.6~20130417-0ubuntu1
  ProcVersionSignature: Ubuntu 3.8.0-19.29-generic 3.8.8
  Uname: Linux 3.8.0-19-generic i686
  ApportVersion: 2.9.2-0ubuntu8
  Architecture: i386
  Date: Sat Apr 27 13:22:35 2013
  InstallationDate: Installed on 2011-10-14 (560 days ago)
  InstallationMedia: Ubuntu 11.10 "Oneiric Ocelot" - Release i386 (20111011)
  MarkForUpload: True
  SourcePackage: gdb
  UpgradeStatus: Upgraded to raring on 2013-04-05 (21 days ago)

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/gdb/+bug/1173562/+subscriptions




More information about the foundations-bugs mailing list