From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 124497 invoked by alias); 12 Jan 2016 12:34:05 -0000 Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner@cygwin.com Mail-Followup-To: cygwin@cygwin.com Received: (qmail 124485 invoked by uid 89); 12 Jan 2016 12:34:05 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=0.5 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,SPF_PASS,URI_HEX autolearn=no version=3.3.2 spammy=bell, rings, 78, nasty X-HELO: mail-lf0-f52.google.com Received: from mail-lf0-f52.google.com (HELO mail-lf0-f52.google.com) (209.85.215.52) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-GCM-SHA256 encrypted) ESMTPS; Tue, 12 Jan 2016 12:34:03 +0000 Received: by mail-lf0-f52.google.com with SMTP id c192so233483661lfe.2 for ; Tue, 12 Jan 2016 04:34:03 -0800 (PST) MIME-Version: 1.0 X-Received: by 10.25.21.208 with SMTP id 77mr38291470lfv.96.1452602040207; Tue, 12 Jan 2016 04:34:00 -0800 (PST) Received: by 10.112.167.103 with HTTP; Tue, 12 Jan 2016 04:34:00 -0800 (PST) In-Reply-To: <1448289893881-122909.post@n5.nabble.com> References: <1408580171694-110722.post@n5.nabble.com> <1408732343936-110800.post@n5.nabble.com> <5423F775.7030208@onespin-solutions.com> <54294CED.9050602@onespin-solutions.com> <20141008121224.GB29235@calimero.vinschen.de> <5435302A.6030800@onespin-solutions.com> <1448289893881-122909.post@n5.nabble.com> Date: Tue, 12 Jan 2016 13:58:00 -0000 Message-ID: Subject: Re: gdb 7.8 consistently fails to run executable - error is From: Vanda Vodkamilkevich To: cygwin@cygwin.com Content-Type: text/plain; charset=UTF-8 X-IsSubscribed: yes X-SW-Source: 2016-01/txt/msg00140.txt.bz2 Hi, I'm reacting to this email with a long delay but I just wanted to let you know that this change saved my life, now I am finally able to debug again with cygwin (w7 64bits , 32 bits cygwin) because I was blocked by a nasty "security" dll (part of Arkoon Security). A big thank you... Additionally I had another problem in gdb which is detecting kernel64.dll instead of kernel32.dll : am I the only one still using Cygwin 32 on Windows 64? Does this rings a bell for anyone? I had to add another (uggly) patch above Tim's work, see below : diff -ru origsrc/gdb-7.8/gdb/windows-nat.c src/gdb-7.8/gdb/windows-nat.c --- origsrc/gdb-7.8/gdb/windows-nat.c 2015-06-23 17:44:40.862022600 +0200 +++ src/gdb-7.8/gdb/windows-nat.c 2015-11-25 13:28:46.893554500 +0100 @@ -648,6 +648,14 @@ buf[0] = 0; if (access (name, F_OK) != 0) { + char *found=strstr(name,"kernel64.dll"); +DEBUG_EVENTS (("gdb: access() failed for \"%s\"\n", name)); + if (found) + { + char *six=strchr(found,'6'); + *six++ = '3'; + *six= '2'; + } if (strcasecmp (name, "ntdll.dll") == 0) #ifdef __USEWIDE { @@ -681,7 +689,7 @@ free (rname); } else - error (_("dll path too long")); + warning (_("dll path too long, or can not be accessed: %s - %s"),name,rname); } /* Record cygwin1.dll .text start/end. */ p = strchr (so->so_name, '\0') - (sizeof ("/cygwin1.dll") - 1); 2015-11-23 15:44 GMT+01:00 Tim Chick : > Hi Dominik, > > In my case, it was not down to the string size being too small. I seemed to > suffer exactly the same problem. > > You get the same error if Windows can't access the dll. This seems to happen > for some "special" dlls. > > The size of any PATH variable won't matter - the path it refers to here is > the "realpath" conversion of the dll filename. > > The simple patch applied makes gdb work for me on Windows 7. > > workaround_win7_dll_path_too_long.patch > > > Patch also below: > > --- 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); > > > Thanks, > 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-tp110722p122909.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 > -- 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