[Ifeffit] Demeter will not start without admin permissions

Matt Newville newville at cars.uchicago.edu
Fri Aug 31 12:24:33 CDT 2012


Hi Jason,

On Fri, Aug 31, 2012 at 7:47 AM, Jason Gaudet <jason.r.gaudet at gmail.com> wrote:
> 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 at 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



More information about the Ifeffit mailing list