Hi Jason,
On Fri, Aug 31, 2012 at 7:47 AM, Jason Gaudet
Hi all,
I came across another Demeter startup issue that seems different from the mingw and perl conflicts previously discussed, and I'm pretty stumped.
System: Demeter 0.9.10 on Windows 7 32bit
Issue: All Demeter apps (dathena.bat, dartemis.bat, etc.) will no longer run as a user. Apps will only run when opened as an administrator. Trying to open as a user causes cmd window and splash screen to pop up and instantly disappear. No "compatibility mode" seems to help. The problem seemed to pop up sometime between August 2 and August 8, after upgrading to 0.9.10, but I downgraded to 0.9.0 and the problem persisted, so (likely) something changed in my Windows environment and not Bruce's software.
The log:
Can't load 'C:/strawberry/perl/site/lib/ auto/Ifeffit/Ifeffit.dll' for module Ifeffit: load_file:Invalid access to memory location at C:/strawberry/perl/lib/DynaLoader.pm line 200. at C:/strawberry/perl/site/lib/Demeter.pm line 36 Compilation failed in require at C:/strawberry/perl/site/lib/Demeter.pm line 36. BEGIN failed--compilation aborted at C:/strawberry/perl/site/lib/Demeter.pm line 36. Compilation failed in require at C:/strawberry/perl/site/lib/Demeter/UI/Athena.pm line 5. BEGIN failed--compilation aborted at C:/strawberry/perl/site/lib/Demeter/UI/Athena.pm line 5. Compilation failed in require at C:\strawberry\perl\site\bin\dathena.bat line 25. BEGIN failed--compilation aborted at C:\strawberry\perl\site\bin\dathena.bat line 25.
I exchanged a few Emails with Bruce before realizing this is a bit more complex than I thought. We've thus figured out (I think)
- Explicitly giving myself full permissions to C:/strawberry/perl/site/lib/auto/Ifeffit/ and %APPDATA%/demeter has no effect. - Although I have a cygwin version of perl, demeter is calling up the right one each time. Invoking perl with the full path in e.g. dathena.bat has no effect.
I suspect the problem might not be in perl or any of Bruce's code, but in some behavior of ifeffit that was previously condoned by Windows but now requires elevated permissions. I understand ifeffit is written in fortran90 but I don't know if there's any aspect of it that might be affected by recent MS Visual C++ updates I've done on my laptop. (MS Visual C++ 2008 x86 9.0.30729.17 and MS Visual C++ 2010 x86 10.0.30319). I'm pretty sure MSVC2008 coincides with the time Demeter stopped working but it could just be a coincidence. There are also of course various security updates I can't easily sort through.
I was hoping Matt might be able to point me in the right direction here; I don't know the inner workings of IFEFFIT and I might be far off track already.
Thanks,
Jason
_______________________________________________ Ifeffit mailing list Ifeffit@millenia.cars.aps.anl.gov http://millenia.cars.aps.anl.gov/mailman/listinfo/ifeffit
One question would be whether you can run the codes from the older Ifeffit installation? For what it's worth, Ifeffit has been built with MinGW for awhile now. Still, as you suggest, a recent install of MSVC2008 might be causing the conflict. You might try grabbing the MS*71.dll files from the older Ifeffit installation and making sure they are put somewhere early in the path when running strawberry perl. As far as I can tell, Bruce built the file C:/strawberry/perl/site/lib/auto/Ifeffit/Ifeffit.dll separately from ifeffit_12.dll, (probably) also with MinGW, but in a way that depends on the ifeffit_12.dll (I don't see any other obvious dlls around). I don't know what dlls this Ifeffit.dll will try to load, but that is probably what is causing the trouble. Hope that helps, --Matt