Demeter will not start without admin permissions
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
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
On Friday, August 31, 2012 12:24:33 PM Matt Newville wrote:
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).
That is all correct, including that I used MinGW. B -- Bruce Ravel ------------------------------------ bravel@bnl.gov National Institute of Standards and Technology Synchrotron Methods Group at NSLS --- Beamlines U7A, X24A, X23A2 Building 535A Upton NY, 11973 Homepage: http://xafs.org/BruceRavel Software: https://github.com/bruceravel
Thanks Matt, this was helpful in directing my troubleshooting.
Somehow, the problem seemed to resolve itself today without my
intervention. So I'm again stumped, but I'm stumped with a perfectly
functional version of Demter again. Maybe recent Java updates changed
something, or some other software update I'm too lazy to track down ...
So, trouble issue resolved, as mysteriously as it began. Gremlins, clearly.
-Jason
On Fri, Aug 31, 2012 at 1:24 PM, Matt Newville
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
Weird but good.
On Mon, Sep 17, 2012 at 11:31 AM, Jason Gaudet
Thanks Matt, this was helpful in directing my troubleshooting.
Somehow, the problem seemed to resolve itself today without my intervention. So I'm again stumped, but I'm stumped with a perfectly functional version of Demter again. Maybe recent Java updates changed something, or some other software update I'm too lazy to track down ...
So, trouble issue resolved, as mysteriously as it began. Gremlins, clearly.
Weird but good is still good. ;). --Matt
The thing I'm loving about Jason's change of fortunes is that it validates my personal favorite approach to troubleshooting. Apparently, if I do nothing to help for long enough, problems really *do* solve themselves. Awesome! B On Monday, September 17, 2012 02:23:58 PM Matt Newville wrote:
Weird but good.
On Mon, Sep 17, 2012 at 11:31 AM, Jason Gaudet
wrote: Thanks Matt, this was helpful in directing my troubleshooting.
Somehow, the problem seemed to resolve itself today without my intervention. So I'm again stumped, but I'm stumped with a perfectly functional version of Demter again. Maybe recent Java updates changed something, or some other software update I'm too lazy to track down ...
So, trouble issue resolved, as mysteriously as it began. Gremlins, clearly. Weird but good is still good. ;).
--Matt _______________________________________________ Ifeffit mailing list Ifeffit@millenia.cars.aps.anl.gov http://millenia.cars.aps.anl.gov/mailman/listinfo/ifeffit
-- Bruce Ravel ------------------------------------ bravel@bnl.gov National Institute of Standards and Technology Synchrotron Methods Group at NSLS --- Beamlines U7A, X24A, X23A2 Building 535A Upton NY, 11973 Homepage: http://xafs.org/BruceRavel Software: https://github.com/bruceravel
participants (3)
-
Bruce Ravel
-
Jason Gaudet
-
Matt Newville