libASImage.ddl error under Cygwin

Dear Root Talk,

I successfully installed the latest version of Cygwin and ROOT (5.08) on two XP machines. Then I wanted to install it on a students laptop (also XP, guessing SP2) and I got the following error message when trying to run a macro which had worked on the other machines

So I reinstalled both Cygwin and ROOT to no avail. I even copied over the ROOT folder from the “good” XP machine to his laptop - still the same error message.

It gets better: I actually managed to cause the same error message to happen on one of the “good” XP machines once I reinstalled Cygwin and ROOT.

Now I am no longer able to make that error message go away. Reinstalling Cygwin didn’t help…

Any thoughts?



First of all, did you install Root binary or from source (which tarfile) ?
Did you set your environment variable ROOTSYS and did you add “%ROOTSYS%\bin” to your PATH ?
If you installed win32gdk version (root_v5.08.00.win32gdk.tar.gz), You should start root from command prompt, and not from cygwin prompt.


Ah, sorry for not including that.

I installed the binary version of ROOT.

Yes, I did set the environment variables.

The strange thing is if I check which libraries are loaded libASImage.dll shows up.

Well, try to delete zero-sized dlls from your %ROOTSYS%/lib directory, as apparently dlopen try to load it from there. They are not needed anyway (the good ones are in %ROOTSYS%/bin)


Thanks for the suggestion.

Turns out I don’t have any zero sized dll’s, smallest ones are 1KB.

Also, libASImage.dll in %ROOTSYS%/lib is actually a shortcut to libASImage.dll in %ROOTSYS%/bin.

I am going to try a clean install yet again, this time removing the registry keys.

No joy - still the same problem.

Ran the installer for Cygwin twice as mentioned here. The first time not changing anything and then the second time installing gcc 3.3.3 and emacs (which brought X11 along). I remember not doing this when I did it on the students laptop…

Then I untarred ROOT into /usr/local/bin with tar xvf.

Set up the ROOTSYS, etc… and didn’t work

Strange thing is Cygwin remembered where to save the downloaded files. So apparently I didn’t get all of the registry keys…

I will try it in another account and see if that makes a difference - no better idea comes to mind thus far…

Okay, so I may have tricked myself - not sure as it has been a busy past couple of weeks.

I came across something interesting. The first time I run the macro I get the above error message and no graphs. However, when I run the macro for a second time the graphs do appear, although there is still an error message. This time it is only complaining about the following:

I checked on the supposed last “good” machine at home and I do get the same error message. Looking at .root_hist turns out I never ran those macros. As for the machine in the lab - given the above morphing of the error it could be possible that I dismissed it the first time around and just re-ran the macro without thinking (not looking at the prompt output). Seems a little hard to believe, as I was showing it to the student (how it is supposed to work) so we should have seen it there again. But I think it is easier to accept than this mysterious “worked before but now no longer”…

I have attached the code along with the data file it reads in.

The error can’t be coming from not using T_int, T_float, etc… can it?

DDc1c2c3.txt (1.42 KB)
DualDiscriminator_3counter.cpp (4.87 KB)


First of all, I think there is a misunderstanding between the version you are using. if you want to use root and cygwin/gcc, you need this tar file : root_v5.08.00.win32gcc.tar.gz.
But as said on the root web page : Note that cygwin/gcc is currently in a very poor status. We strongly recommend to use the win32gdk version below compiled with VC++7.1. (root_v5.08.00.win32gdk.tar.gz)
So please, just make sure which version you downloaded (it was my first question). Just tell me exactly the tar file name you are using.


Okay, this is the version I installed:


The other XP users told me to install this one…

I will try the other version then.


Well, I just ran that macro on a friends XP machine running Cygwin and there it works fine.

So apparently I installed something incorrectly with Cygwin…