WinGRASS errors

From GRASS-Wiki
Revision as of 08:31, 10 November 2014 by Neteler (talk | contribs) (+The startup fails with a IOerror: [Errno 2] No such file or directory : 'nul')
Jump to navigation Jump to search

Due to the varieties of MS-Windows versions existing, a series of problems with the WinGRASS Installation have been identified (and solved):

The GRASS GIS (winGRASS) exits immediately after I start it!

Problem: WinGRASS complains about a missing MSVCR71.dll, MSCVP100.dll or similar on startup or exits immediately.

First note that GRASS GIS 6.4.3 and later 'suggest to install the needed "Important Microsoft runtime libraries" already during the installation process (on the same install wizard page offering to download sample datasets), so you should make sure that you check this option during installation. If you are sure about that or the step ended with error, follow the instructions below.

Solution A

You may need to install Microsoft's .NET Framework. You can download it here.

If it still asks for MSVCP100.dll, download it here.

Solution B

If the above Solution A does not help, or ends with an error, or if it says that you already have everything, you can reproduce steps which the installer is doing:

  1. You do not need to uninstall GRASS GIS to fix it. But be sure to close any GRASS windows you have still open.
  2. Download msvcrt-1.0.1-12.tar.bz2 archive
  3. Uncompress the archive. Note that it is tar.bz2, so to uncompress it use 7-Zip or Winzip or something else that can handle it. It will unzip 3 folders. Keep those 3 folders together (it doesn't matter where).
  4. Open the "bin" folder (it is in one of the 3 folders from above) and run the following programs (just double click on them) in the indicated order, following the directions in each wizard:
    • vcredist_2005_x86.exe (first screen is in German, just click left button ("Ja"); then it switches to English)
    • vcredist_2008_x86.exe
    • vcredist_2010_x86.exe
  5. Once you installed each of these programs, copy the following files (they are in the same "bin" folder) to the "extrabin" folder in the GRASS GIS installation directory (the one you chose during the installation):
    • msvcp60.dll, msvcp70.dll, msvcp71.dll, msvcr71.dll, msvcrt.dll
      So: paste them into e.g. C:\Program Files (x86)\GRASS GIS 7.0.0beta3\extrabin\ (assuming you used the default install location).
  6. Try GRASS GIS again! It should be running now. If not make sure that you have tried all the steps and try again. If this still does not help, please write to the grass-user mailing list.

Error message "ImportError: cannot import name MAXREPEAT"

A system-wide Python installation (2.7.2, independent of GRASS) may cause the trouble. Replacing this system-wide Python installation with version 2.7.4 (or newer 2.7.x), instead of 2.7.2, solves the problem.

A variant of the problem is also seen with "import re" appearing in the error message. The solution is the same: upgrade the system-wide installed version.

Note that you can also try to remove the system-wide installation but this has a higher risk of breaking some (part) other applciation which depends on the system-wide Python.

Error message "The ordinal 63 could not be located in the dynamic link libexpat.dll."

You have likely an old "libexpat.dll" in your directory %WINDIR%\system32 (or %WINDIR%\sysWOW64). Try to rename that file (or delete after backup). Then winGRASS should work.

Error message "The ordinal 32 could not be located in the dynamic link library proj.dll."

You have likely an old "proj.dll" in your directory %WINDIR%\system32 (or %WINDIR%\sysWOW64). Try to rename that file (or delete after backup). Then winGRASS should work.

The winGRASS user interface shows up in the wrong language for me!

MSys users should be setting the LANG, LC_MESSAGES etc. variables in ~/.bash_profile (etc) if they want it set to a specific locale other than the default locale of the system.

This and that is not functioning in my winGRASS installation!

May happen, we are working on it :) Please visit the Errata page and the WinGRASS Current Status page

Error message "This application has failed to start because libintl3.dll was not found". (or libiconv2.dll and/or regex2.dll)

Reinstalling of the "msys" package in the OSGeo4W installer will bring it back.

Error message "libfreetype-6.dll not installed" (similar wording)

You may need to install "libfreetype-6.dll" on your system. For this, launch the OSGeo4W Network Installer > Advanced Install, type freetype in the search box and do the freetype packages installation.

The startup fails with a GISDBASE not defined error

Maybe there is junk in the session configuration file (%APPDATA%\GRASS6\grassrc6 for GRASS 6 or %APPDATA%\GRASS7\rc for GRASS 7) where %APPDATA% is usually C:\Users\<username>\AppData. To test, rename it and a new one will be created next time you run GRASS GIS:

  • Note that %APPDATA% is a hidden folder
  • rename it e.g. to grassrc6.old or rc.old
  • now restart GRASS GIS and the error should be gone.

The startup fails with a IOerror: [Errno 2] No such file or directory : 'nul'

Q: At startup, I get

 nul=open <os.devnull, 'w'>
 IOerror: [Errno 2] No such file or directory : 'nul'

A: Apparently, it's possible for the service implementing the null device ('nul' pseudo-file) to be stopped or to malfunction.

The status can be checked via the control panel. Start the Device Manager (Control Panel > Hardware and Sound > Device Manager), select View > Show hidden devices, then under Non-Plug and Play Drivers, there should be an entry for "Null".

The corresponding registry key is

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Null

The Start and Type values should both be 1.

Perhaps I got platform specific issues!

OK, please check the comments for winGRASS on XP/2000 or Windows7

See also