This is the mail archive of the
cygwin
mailing list for the Cygwin project.
Pyclewn doesn't run because Cygwin gdb's version string is non-standard
- From: Philip Daniels <philip dot daniels1971 at gmail dot com>
- To: cygwin at cygwin dot com
- Date: Tue, 17 Jun 2014 11:45:10 +0100
- Subject: Pyclewn doesn't run because Cygwin gdb's version string is non-standard
- Authentication-results: sourceware.org; auth=none
Hi,
I am trying to run Pyclewn (gdb front end for Vim) under Cygwin. Installation
went fine, but when starting Pyclewn, it starts gdb and attempts to determine
the version number:
Exception in pyclewn:
<class 'clewn.__init__.ClewnError'>
"cannot find the gdb version"
source line: "raise ClewnError('cannot find the gdb version')"
at /usr/lib/python3.2/site-packages/clewn/gdb.py:357
pyclewn aborting...
The cause appears to be that the version number reported by Cygwin gdb is
non-standard, Pyclewn doesn't like the "(cygwin-special)" after the verison
number:
GNU gdb (GDB) 7.6.50.20130728-cvs (cygwin-special)
The relevant bit of Pyclewn is
def parse_gdb_version(header):
r"""Parse the gdb version from the gdb header.
From GNU coding standards: the version starts after the last space of
the
first line.
>>> DOCTEST_GDB_VERSIONS = [
... r'~"GNU gdb (GDB) 7.5.1\n"',
... r'~"GNU gdb (Sourcery CodeBench Lite 2011.09-69)
7.2.50.20100908-cvs\n"',
... r'~"GNU gdb (GDB) SUSE (7.5.1-2.5.1)\n"',
... r'~"GNU gdb (GDB) Fedora (7.6-32.fc19)\n"',
... r'~"GNU gdb (GDB) 7.6.1.dummy\n"',
... ]
I checked the gdb source code, and it appears that the comment in Pyclewn
is correct w.r.t. the format. Here is the relevant bit of top.c:
/* Print the GDB banner. */
void
print_gdb_version (struct ui_file *stream)
{
/* From GNU coding standards, first line is meant to be easy for a
program to parse, and is just canonical program name and version
number, which starts after last space. */
For info and links to bug reports:
http://stackoverflow.com/questions/18157954/fedora-19-pyclewn-cant-find-gdb-version
--
Philip Daniels.
--
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