Question

I'm getting "skipping XXX: it is not a regular file" every time I run ctags -R XXX. For one reason or another, ctags on Cygwin isn't recursing directories. Surely, I must be doing something stupid.

Whenever I try the de-facto standard ctags -R in my project root, it complains that I didn't specify any input files. When I specify a directory, it seems to think its a file.

I'm a tad stumped. I installed a fresh Cygwin build last week from scratch. I installed everything. I rarely use Cygwin. ctags works perfectly on all my BSD, Linux, Mac and Solaris boxes.

I thought Perforce's read-only permissions might have been the culprit, but chmod 777 changes nothing.

Any ideas? Should I recompile from source?

Was it helpful?

Solution

As is currently being discussed on the Cygwin mailing list, the xemacs-tags and ctags packages both install /bin/ctags. The behaviour you're seeing is from the xemacs version.

The developers will sort it out, although that may take a little while. In the meantime, do the following to get Exuberant Ctags (with its working -R option) installed:

  1. Run the Cygwin installer again (download setup.exe again if you need to).

  2. At the package list, search for "tags" and click the "New" column for both "ctags" and "xemacs-tags" until they say either "Skip" or "Uninstall" (one's under "Devel", the other under "Editors".

  3. Hit "Next".

  4. Once the install has completed, click "Back" instead of "Finish" (if you do this wrong, just restart the installer).

  5. At the package list, select to install "ctags" only. As of today (12 December 2012), that'll specify version 5.8-1.

  6. Click Next and let the install finish.

That'll give you the "ctags" package without the "xemacs-tags" package, and you should be good to go.

OTHER TIPS

I'm getting the same problem, just installed full Cygwin Oct 2012. Downloaded Exuberant Ctags source, compiled, and no more problem.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top