xtags problem

If reporting a bug with the Zeus IDE please post the details here. Please do not post questions here.
abushne

xtags problem

Post by abushne »

I am trying to setup a "shared" tags database for a C++ document type. I am trying to tag the include and src file of my visual studio.net installation, anyway I point the tag database builder at the installtion directory and it builds up a files list when I click search, but when I click build, I always get the following error:

Unexpected error spawning xTags execuable

it shows the xtags command line and then states to make sure xtags installation directory has been added to the PATH.

xtags is located where zeus is.. and I can successfully create other tag databases, the only difference I can detect is that the files I am trying tag are in a directory with spaces in the name.. I also may not have write access to the directory of the source, though I do have write access to the zeus installation directory where the database is written.
jussij
Site Admin
Posts: 2650
Joined: Fri Aug 13, 2004 5:10 pm

Post by jussij »

When I click search, but when I click build, I always get the following error:

Unexpected error spawning xTags execuable
Try copying the xtags.exe file into the c:\windows directory, or make sure the Zeus install directory in defined in the PATH.

Jussi
abushne

Post by abushne »

Try copying the xtags.exe file into the c:\windows directory, or make sure the Zeus install directory in defined in the PATH.
I have done so and still encounter the problem. The problem is specific to building a tags database off of files in visual studio.net installation. I was able to successfully build a tag database off of my python install. I believe the main difference is that the .net is in a directory with spaces in the name and my python install was not...
jussij
Site Admin
Posts: 2650
Joined: Fri Aug 13, 2004 5:10 pm

Post by jussij »

To test this I problem created a test folder structure with lots of white space as shown below:
Volume in drive D has no label.
Volume Serial Number is C494-4B5C

Directory of d:\temp\this is a folder\source in here\zExample

16/03/2001 17:36 1,944 cmttests.c
30/04/1998 17:38 26,735 ctags.c
05/04/1992 14:03 1,975 ctype.c
14/12/1995 12:43 2,952 wildcard.c

Directory of d:\temp\this is a folder\source in here\zExample

07/10/2000 12:53 11,450 cinc.cpp
29/03/2001 12:06 1,849 cmtconvr.cpp
16/03/2001 17:49 2,054 cmtcount.cpp
16/03/2001 17:49 7,032 cmtparsr.cpp
16/03/2001 17:49 2,012 cmtremov.cpp
20/03/2001 11:43 2,847 cmtxtrac.cpp
10/07/2005 12:56 23,481 fgrep.cpp
10/07/2001 09:43 5,327 x95.cpp
31/08/2000 18:15 2,498 xdump.cpp

Directory of d:\temp\this is a folder\source in here\zExample

16/03/2001 17:29 534 cmtconvr.h
16/03/2001 17:49 1,002 cmtcount.h
16/03/2001 17:30 1,882 cmtparsr.h
16/03/2001 17:49 530 cmtremov.h
16/03/2001 17:49 848 cmtxtrac.h
05/04/1992 14:03 1,265 ctype.h
19 File(s) 98,217 bytes

Total Files Listed:
19 File(s) 98,217 bytes
0 Dir(s) 7,291,691,008 bytes free
I then ran the tags builder on these source file an it had no trouble creating the tags database and Zeus also had no trouble finding item form this database. So as far as I can tell the fact that a file contains white space does not effect the tags builder.

With very little to go on it is difficult to offer anything but a guess as to why this is not working, but I would say the reason the tags is failing to build is the full path and file name of the source files plus the xtags options are exceeding the maximum text buffer limit of the command prompt and hence the reason the xtags.exe fails to run.

Cheers Jussi
abushne

Post by abushne »

With very little to go on it is difficult to offer anything but a guess as to why this is not working, but I would say the reason the tags is failing to build is the full path and file name of the source files plus the xtags options are exceeding the maximum text buffer limit of the command prompt and hence the reason the xtags.exe fails to run.
This seems like a logical conclusion.. Any suggested workaround? Does xtags have the ability to take a response file as an argument? I could try building several sub databasees, I suppose but that seems painful
abushne

Post by abushne »

This seems like a logical conclusion.. Any suggested workaround? Does xtags have the ability to take a response file as an argument? I could try building several sub databasees, I suppose but that seems painful
In looking over the xtags --help, it appears there are options for passing things to the tool in files etc. I will look into handcrafting the database using xtags in thi smanner. Thanks.
jussij
Site Admin
Posts: 2650
Joined: Fri Aug 13, 2004 5:10 pm

Post by jussij »

In looking over the xtags --help, it appears there are options for passing things to the tool in files etc.
Although the arguments are long, I suspect the file names migh be more of a problem. This problem with long file names has been seen once before:

http://www.zeusedit.com/forum/viewtopic.php?t=34

I had a look at this ctags option and unfortunately from what I found only the options can be taken from the file. The file name still needs to be supplied on the command line :(
I will look into handcrafting the database using xtags in this manner.
I do not think this will help at this stage. The Database Builder, like Zeus runs the ctags, takes the results produced and puts them into the special tags database. So the command line is hidden deep inside the Database Builder and inside Zeus :(

To make this work the changes will need to be made to the Database Builder program itself.

Cheers Jussi
jussij
Site Admin
Posts: 2650
Joined: Fri Aug 13, 2004 5:10 pm

Post by jussij »

Could you try out this version of the xtags.dll as follows:
  1. Change to the Zeus install directory
  2. Rename the xtags.dll file to xtags.old
  3. Download this file: http://www.zeusedit.com/z300/xtags.zip
  4. Extract the new xtags.dll into the Zeus install directory
If this new dll also fails the build, could you capture the message box and send it as an attachment to info@zeusedit.com with the tile of Zeus Tags Bug.

Cheers Jussi
abushne

Post by abushne »

Could you try out this version of the xtags.dll as follows:

Change to the Zeus install directory

Rename the xtags.dll file to xtags.old

Download this file: http://www.zeusedit.com/z300/xtags.zip

Extract the new xtags.dll into the Zeus install directory

If this new dll also fails the build, could you capture the message box and send it as an attachment to info@zeusedit.com with the tile of Zeus Tags Bug.
OK, I tried this one and still no luck. I have sent you the information you requested via email to the address provided.
jussij
Site Admin
Posts: 2650
Joined: Fri Aug 13, 2004 5:10 pm

Post by jussij »

This problem seems to be related to the fact that the current xtags.dll attempts to create an output tags file in the same directory as the source file being tagged.

In this particular instance the source file is located in a read only directory, meaning the tags file can not be created and hence the reason for the resulting error message.

The xtags.dll will be changed to create the output tags file in the temp directory and this should fix this problem :)

Jussi
abushne

Post by abushne »

Great thanks. BTW, I was able to get write access to the directory in question and now the tag database creation is working as expected.
jussij
Site Admin
Posts: 2650
Joined: Fri Aug 13, 2004 5:10 pm

Post by jussij »

The latest patch fixes this problem since the tags file is now created in the temp directory :)

Cheers Jussi
Guest

Post by Guest »

I get similar error message when Zeus version 3.95s starts as in the first post. I have Windows 2000. The message is below.

Unexpected Error Spawning xTags Executable

xtags.exe --c-types=+fp --excmd=p --fields=+afmikKlnsSz --sort=no -f C:\DOCUME~1\mauranen\LOCALS~1\Temp\.tag

Make sure the xtags.exe installation directory has been added to the system PATH environment variable.

xtags is in system PATH and I can start it from the command line in any directory.

What could I try.

Antti
jussij
Site Admin
Posts: 2650
Joined: Fri Aug 13, 2004 5:10 pm

Post by jussij »

Hi Antti,

This command line:
xtags.exe --c-types=+fp --excmd=p --fields=+afmikKlnsSz --sort=no -f C:\DOCUME~1\mauranen\LOCALS~1\Temp\.tag
suggests the file name is blank. Notice how the .tag at the end seems to be missing the base file component :?

The file name should have come from the tags database so I suspect the database might have been corrupted :(

To fix this try doing a full tags rebuild using the Tags, Rebuild menu command.

If this does not work then close Zeus and try deleting/renaming all the *.zbd files. These files should be in the same directory as the *.zpi file.

In both case Zeus should recreate new database files which will hopefully remove the corruption.

If this does not fix the problem open the post you project/workspace files to the end of this thread (ie *.zwi, *.zpi).

Cheers Jussi
Guest

Post by Guest »

Hello Jussi,

I did what you suggested and it started to work. I think I simply did something in a wrong way in the first try.

Thanks.

Antti
Post Reply