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