Radau test error on Windows

Help
2014-01-30
2014-02-03
  • Hello. I am running Windows 7 32 bit and have Anaconda installed. I am able to run a vode model, but I believe my system is too stiff for this method, so it doesn't converge. Most of the tests in the run_all_tests script pass except Radau and Auto. The Radau tests give the following error:

    ***** Testing script DAE_example.py ****************************
    
    GNU Fortran (GCC) 4.7.0 20111219 (experimental)
    Copyright (C) 2011 Free Software Foundation, Inc.
    
    GNU Fortran comes with NO WARRANTY, to the extent permitted by law.
    You may redistribute copies of GNU Fortran
    under the terms of the GNU General Public License.
    For more information about these matters, see the file named COPYING
    
          Testing failed on test file DAE_example.py
    Traceback (most recent call last):
      File "DAE_example.py", line 36, in <module>
        dae = Generator.Radau_ODEsystem(DSargs)
      File "C:\Users\dbracewell\PyDSTool\PyDSTool\Generator\Radau_ODEsystem.py", line 550, in __init__
        self.compileLib()
      File "C:\Users\dbracewell\PyDSTool\PyDSTool\Generator\Radau_ODEsystem.py", line 937, in compileLib
        rout.stop()
      File "C:\Users\dbracewell\PyDSTool\PyDSTool\Redirector.py", line 82, in stop
        os.remove(self.tmpfn)
    WindowsError: [Error 32] The process cannot access the file because it is being used by another process: 'c:\\users\\dbrace~1\\locals~1\\temp\\tmpgce54y.pyout'
    

    The tmpgce54y.pyout file referenced above contains the following.

    Cannot build msvcr library: "msvcr90d.dll" not found
    Could not locate executable g77
    Could not locate executable f77
    Could not locate executable ifort
    Could not locate executable ifl
    Could not locate executable f90
    Could not locate executable DF
    Could not locate executable efl
    Found executable C:\Users\dbracewell\AppData\Local\Continuum\Anaconda\Scripts\gfortran.bat
    Found executable C:\Users\dbracewell\AppData\Local\Continuum\Anaconda\Scripts\gfortran.bat
    Could not locate executable g95
    Could not locate executable efort
    Could not locate executable efc
    don't know how to compile Fortran code on platform 'nt'
    

    In the Anaconda directory, I have msvcr90.dll and msvcr100.dll, but I cannot find msvcr90d.dll on my computer. I am very new to Python and I appreciate any help you can offer in getting Radau to work.

    David

    EDIT: I was able to address the missing dll problem by following the recommendation of mgaitan in this thread. Now the the temp file does not have the "Cannot build msvcr library: "msvcr90d.dll" not found", but still cannot find a compiler. I have MinGW installed and have "C:\MinGW\bin" in the PYTHONPATH variable.

     
    Last edit: David Bracewell 2014-01-30
  • Rob Clewley
    Rob Clewley
    2014-01-30

    Hi David,

    I'm not sure which Fortran you are trying to use, and I'm not very familiar with Anaconda. if you open a C:\ command prompt, are you first able to get a response from gnu C? I.e. type "gcc". Then, try "g77" or "gfortran", depending which one Anaconda uses. They should all be globally visible to all users at the command prompt if the path and access rules are set up correctly. The access permissions might somehow be messed up if the gfortran.bat file is unable to access the binary of the compiler. What is the content of that batch file? Really, though, I'm not sure how to help. It will take a bit of detective work to see what the underlying problem is.

     
  • Rob,

    Thanks for the response. I am able to access g77 and gfortran from command prompt. I found that the numpy and scipy installations with Anaconda were broken, so I installed Enthought but received the same error. Now I am just installing numpy and scipy from their sources instead of in a package to see if that makes a difference.