This is the mail archive of the
cygwin
mailing list for the Cygwin project.
Re: gdb 7.8 consistently fails to run executable - error is
- From: Tim Chick <chick at computergeek dot freeserve dot co dot uk>
- To: cygwin at cygwin dot com
- Date: Mon, 23 Nov 2015 08:09:41 -0700 (MST)
- Subject: Re: gdb 7.8 consistently fails to run executable - error is
- Authentication-results: sourceware.org; auth=none
- References: <1408580171694-110722 dot post at n5 dot nabble dot com> <loom dot 20140821T100019-590 at post dot gmane dot org> <1408732343936-110800 dot post at n5 dot nabble dot com> <5423F775 dot 7030208 at onespin-solutions dot com> <54294CED dot 9050602 at onespin-solutions dot com> <20141008121224 dot GB29235 at calimero dot vinschen dot de> <5435302A dot 6030800 at onespin-solutions dot com>
> Am 08.10.2014 um 14:12 schrieb Corinna Vinschen:
>> On Sep 29 14:13, Dominik StraÃer wrote:
>>> Hi all,
> Hi Corinna,
>
>>> I've dug into the gdb sources. The problem is in the cygwin-only
>>> part and is not about the PATH variable but about one single DLL
>>> file name.
>>>
>>> This path length is *fixed* to 512 characters
>>> (SO_NAME_MAX_PATH_SIZE) for the *realpath* of the DLL.
>>
<SNIP>
>>
>> I'm not sure how to fix this problem yet. I'll look into it when I
>> had a chance to catch up with my insane mail backlog.
> I only see a chance by makin this a dynamic storage.
> as indicated in solist.h
Dear All,
I experienced the same problem.
The error will occur if the path of the dll is too long, OR if gdb can not
access the dll for some reason. If the dll can not be accesed, then the call
to realpath() fails, and you get the "dll path too long" message.
In my case, the path was never too long. Making the change below lets you
debug your applications:
--- gdb-7.9.1-1.src/gdb.i686/src/gdb-7.9.1/gdb/windows-nat.c.orig 2015-11-23
11:43:17.834000000 +0000
+++ gdb-7.9.1-1.src/gdb.i686/src/gdb-7.9.1/gdb/windows-nat.c 2015-11-23
14:17:30.302252500 +0000
@@ -623,7 +623,8 @@ windows_make_so (const char *name, LPVOI
free (rname);
}
else
- error (_("dll path too long"));
+ warning (_("dll path too long, or can not be accessed '\"%s\"'"),
+ name);
}
/* Record cygwin1.dll .text start/end. */
p = strchr (so->so_name, '\0') - (sizeof ("/cygwin1.dll") - 1);
Hope this helps!
Tim
--
View this message in context: http://cygwin.1069669.n5.nabble.com/gdb-7-8-consistently-fails-to-run-executable-error-is-dll-path-too-long-tp110722p122912.html
Sent from the Cygwin list mailing list archive at Nabble.com.
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple