[GRASS-dev] Re: [GRASS-user] Unable to create new project with Grass

First, try an already created location. Put the location of one of the demo data sets into your grass data directory and try to see it. Once you can see it OK, quit GRASS (GUI and typing exit from the command line), restart GRASS, and try to create a mapset in the demo location. If that works, quit GRASS, restart GRASS, and try creating a dummy location using EPSG code.

Sorry for the complications, but this can help troubleshoot the problem.

Michael
____________________
C. Michael Barton, Professor of Anthropology
Director of Graduate Studies
School of Human Evolution & Social Change
Center for Social Dynamics & Complexity
Arizona State University

Phone: 480-965-6262
Fax: 480-965-7671
www: <www.public.asu.edu/~cmbarton>

On Jan 14, 2008, at 2:04 AM, Jan Schorn wrote:

Michael Barton escribió:

On Jan 13, 2008, at 5:06 AM, grass-user-request@lists.osgeo.org wrote:

Date: Sat, 12 Jan 2008 21:26:05 +0000
From: "Jan Schorn" <js.mailinglists@gmail.com>
Subject: Re: [GRASS-user] Unable to create new project with Grass
    6.2.2 in Ubuntu 7.1
To: grass-user@lists.osgeo.org
Message-ID:
    <ec1e03600801121326q3ce98d3ex1cf0a93072832dca@mail.gmail.com>
Content-Type: text/plain; charset="iso-8859-1"

Hi, list
I installed GRASS 6.2.3 in about 14 computers with i368 architecture and
Ubuntu 7.10 (Les-ejk repositorios). The only way to create a new Location is
using QGIS.
Using GRASS the error explained by Matt occurs.
¿Any ideas?

Thanks,
Jan

2008/1/11, Matt <mlpublic42@gmail.com>:

I am unable to create a new location/project in Grass. Since I am new to
both Linux/Ubuntu and Grass there are a nearly infinite ways to go wrong. I
have Ubuntu 7.10 installed. I used Synaptic to install Grass 6.2.2 . I
have been able to start Grass and play with the Spearfish and North Carolina
datasets. I've made it to page 37 in "Open Source GIS A Grass GIS Approach,
3rd ed." As interesting as North Carolina is, I yearn to create a map of
western New York. But when I try to create a new project closer to home, I
get nowhere. All the tutorials I've come across treat this as trivial, but
I'm stuck!

Starting Grass from the "Run Application" applet ("run in terminal" box
checked), starts Grass in the terminal window and a Grass Startup GUI window
appears. Using the Browse button I enter "/home/matt/grass/grassdata" in
the GIS Data Directory box. The previous created directory map1 appears in
the project location box and the Accessible Mapsets window is empty. At
this point I've tried several things. If before starting Grass I put a
Tiger shp file ( tgr36029lkA.shp) into map1, I'm unable to use it. If I
click on EPSG codes and select 4326 and click "Define Location" it tells me
to restart Grass to find the created location. When restarted the location
is not there.

Any ideas? Especially how to start a new project using a Tiger shape
file? (Remember, novice).

Thanks,
Matt

Given what you've described, it seems that somehow you've gone too far down the directory tree. You've got your mapset appearing in the location list. This will be an invalid "location" because it does not contain a PERMANENT directory (i.e., mapset). Try backing up the tree one level. Your new location probably exists at the next level up.

Go back to browse in the data directory selection. It may be the difference between a single click and double click. But you want to get the proper directory in the directory selection dialog box. (In the case above, it should be /home/matt/grass/grassdata *IF* that is where your location directories are stored. That is, the nc_spm_07 directory should be inside /home/matt/grass/grassdata.) Then press OK to return to the startup screen.

At this point, you should seek nc_spm_07 on the left side and PERMANENT, landsat, sqlite, and user1 on the right side. If this is NOT what you see, redo your data directory selection until it IS what you see. At this point you can either 1) create a new mapset INSIDE nc_spm_07 (or other locaiton), or 2) create a new LOCATION inside your data directory.

You should not have to restart GRASS anymore to see a newly created location or mapset (this instruction is out of date AFAIK). If you cannot see a new location or mapset, try reselecting your data directory (i.e., the same one you are creating a location in).

There is very good online help on all this directly accessible from the startup screen by pressing the "Help" button.

Michael_______________________________________________
grass-user mailing list
grass-user@lists.osgeo.org
grass-user Info Page

Hi Micheal,

Thanks for your answer, but in my case the 'nc_spm_07' directory is not being created. The directory doesn't appear neither '/home/matt/grassdata' and nor in '/home/matt'.
I tried the same with the grass packages from the ubuntu repositorios for the 64bit version, and problem also occurs
The epsg file exists in both cases (/usr/share/proj/epsg). There is no error message.

I'm working with a GRASS version compiled from source and never had this problem.

Jan

Jan,

Is EPSG location creation the only thing that fails? Can you create locations from georeferenced files and by specifying projection parameters?

I just tried creating a location from EPSG code 4326 and it worked fine in GRASS 6.3 compiled a few days ago. I don't know if this is a problem related to 6.2 or not

Glynn Clements discussed a problem with shared libraries in Linux that might or might not be a help. I am copying it below.

Michael
____________________
C. Michael Barton, Professor of Anthropology
Director of Graduate Studies
School of Human Evolution & Social Change
Center for Social Dynamics & Complexity
Arizona State University

Phone: 480-965-6262
Fax: 480-965-7671
www: <www.public.asu.edu/~cmbarton>

======== shared library post ==============
Date: Sun, 13 Jan 2008 23:34:52 +0000
From: Glynn Clements <glynn@gclements.plus.com>
Subject: Re: [GRASS-user] Error creating new mapset
To: "Jose A. Ruiz-Arias" <jararias@ujaen.es>
Cc: grass-user@lists.osgeo.org
Message-ID: <18314.40988.419833.583423@cerise.gclements.plus.com>
Content-Type: text/plain; charset=us-ascii

Jose A. Ruiz-Arias wrote:

i have installed GRASS-6.2.3 from source code with no apparent errors during
configuration, compilation and installation. However, when i run grass and
try to create a new mapset i get next error:

g.region: error while loading shared libraries: libgdal.so.1: cannot open
shared object file: Error 40

In fact, when i was setting the projection parameters and chose a UTM
projection, the program did not ask me for the UTM zone, the ellipsoid and
the datum.

In the GRASS configure process I explicitely used the
flag --with-gdal=/usr/local/bin/gdal-config and there were no errors. I
checked for the shared library and it is placed in /usr/local/lib directory.

Before the GRASS installation, I installed the GDAL/OGR bundle from the source
code, with netcdf support, and the GRASS support disabled. Again, there were
no apparent errors. Next I installed the gdal-grass plugin (gdal-grass-1.4.3
with the following options:
configure --with-gdal=/usr/local/bin/gdal-config --with-grass=/usr/local/grass-6.2.3)

I did not detect any problem during the installation of these bundles. Anyone
knows about the problem??

Most systems won't load shared libraries from /usr/local/lib without
some additional configuration.

For Linux, you need to either set the LD_LIBRARY_PATH environment
variable to a path which includes /usr/local/lib, or add
/usr/local/lib to /etc/ld.so.conf then run ldconfig (as root).

--
Glynn Clements <glynn@gclements.plus.com>

===========================================

On Jan 14, 2008, at 7:49 AM, Jan Schorn wrote:

Hi Michael,

creating mapsets in an existing locations is no problem, and everything in GRASS we did worked fine. Its possible to see the locations, mapsets and everything.
But it's still not posible to create a location using EPSG codes (y tried various, 4326 too) - neither the directory is created (GRASS versions: 32bit 6.2.3 and 64bit 6.2.2).
With QGIS there aren't any problems creating Locations. This was the only way i could create Locations with the Ubuntu-Packages.
I'm running GRASS compiled from source on one of the computers and there aren't any problems too.

Thanks for troubleshooting :wink:
Jan

Michael Barton escribió:

First, try an already created location. Put the location of one of the demo data sets into your grass data directory and try to see it. Once you can see it OK, quit GRASS (GUI and typing exit from the command line), restart GRASS, and try to create a mapset in the demo location. If that works, quit GRASS, restart GRASS, and try creating a dummy location using EPSG code.

Sorry for the complications, but this can help troubleshoot the problem.

Michael
____________________
C. Michael Barton, Professor of Anthropology
Director of Graduate Studies
School of Human Evolution & Social Change
Center for Social Dynamics & Complexity
Arizona State University

Phone: 480-965-6262
Fax: 480-965-7671
www: <www.public.asu.edu/~cmbarton>

On Jan 14, 2008, at 2:04 AM, Jan Schorn wrote:

Michael Barton escribió:

On Jan 13, 2008, at 5:06 AM, grass-user-request@lists.osgeo.org wrote:

Date: Sat, 12 Jan 2008 21:26:05 +0000
From: "Jan Schorn" <js.mailinglists@gmail.com>
Subject: Re: [GRASS-user] Unable to create new project with Grass
    6.2.2 in Ubuntu 7.1
To: grass-user@lists.osgeo.org
Message-ID:
    <ec1e03600801121326q3ce98d3ex1cf0a93072832dca@mail.gmail.com>
Content-Type: text/plain; charset="iso-8859-1"

Hi, list
I installed GRASS 6.2.3 in about 14 computers with i368 architecture and
Ubuntu 7.10 (Les-ejk repositorios). The only way to create a new Location is
using QGIS.
Using GRASS the error explained by Matt occurs.
¿Any ideas?

Thanks,
Jan

2008/1/11, Matt <mlpublic42@gmail.com>:

I am unable to create a new location/project in Grass. Since I am new to
both Linux/Ubuntu and Grass there are a nearly infinite ways to go wrong. I
have Ubuntu 7.10 installed. I used Synaptic to install Grass 6.2.2 . I
have been able to start Grass and play with the Spearfish and North Carolina
datasets. I've made it to page 37 in "Open Source GIS A Grass GIS Approach,
3rd ed." As interesting as North Carolina is, I yearn to create a map of
western New York. But when I try to create a new project closer to home, I
get nowhere. All the tutorials I've come across treat this as trivial, but
I'm stuck!

Starting Grass from the "Run Application" applet ("run in terminal" box
checked), starts Grass in the terminal window and a Grass Startup GUI window
appears. Using the Browse button I enter "/home/matt/grass/grassdata" in
the GIS Data Directory box. The previous created directory map1 appears in
the project location box and the Accessible Mapsets window is empty. At
this point I've tried several things. If before starting Grass I put a
Tiger shp file ( tgr36029lkA.shp) into map1, I'm unable to use it. If I
click on EPSG codes and select 4326 and click "Define Location" it tells me
to restart Grass to find the created location. When restarted the location
is not there.

Any ideas? Especially how to start a new project using a Tiger shape
file? (Remember, novice).

Thanks,
Matt

Given what you've described, it seems that somehow you've gone too far down the directory tree. You've got your mapset appearing in the location list. This will be an invalid "location" because it does not contain a PERMANENT directory (i.e., mapset). Try backing up the tree one level. Your new location probably exists at the next level up.

Go back to browse in the data directory selection. It may be the difference between a single click and double click. But you want to get the proper directory in the directory selection dialog box. (In the case above, it should be /home/matt/grass/grassdata *IF* that is where your location directories are stored. That is, the nc_spm_07 directory should be inside /home/matt/grass/grassdata.) Then press OK to return to the startup screen.

At this point, you should seek nc_spm_07 on the left side and PERMANENT, landsat, sqlite, and user1 on the right side. If this is NOT what you see, redo your data directory selection until it IS what you see. At this point you can either 1) create a new mapset INSIDE nc_spm_07 (or other locaiton), or 2) create a new LOCATION inside your data directory.

You should not have to restart GRASS anymore to see a newly created location or mapset (this instruction is out of date AFAIK). If you cannot see a new location or mapset, try reselecting your data directory (i.e., the same one you are creating a location in).

There is very good online help on all this directly accessible from the startup screen by pressing the "Help" button.

Michael_______________________________________________
grass-user mailing list
grass-user@lists.osgeo.org
grass-user Info Page

Hi Micheal,

Thanks for your answer, but in my case the 'nc_spm_07' directory is not being created. The directory doesn't appear neither '/home/matt/grassdata' and nor in '/home/matt'.
I tried the same with the grass packages from the ubuntu repositorios for the 64bit version, and problem also occurs
The epsg file exists in both cases (/usr/share/proj/epsg). There is no error message.

I'm working with a GRASS version compiled from source and never had this problem.

Jan

This suggests a problem with g.proj, since both EPSG and georeferenced file methods use it for creating a location, but specifying parameters does not. This is beyond my area of expertise, but maybe someone else on the dev list can troubleshoot now.

Michael
______________________________
Michael Barton, Professor
Professor of Anthropology
Director of Graduate Studies
School of Human Diversity & Social Change
Center for Social Dynamics & Complexity
Arizona State University
Tempe, AZ 85287-2402
USA

voice: 480-965-6262; fax: 480-965-7671
www: http://www.public.asu.edu/~cmbarton

On Jan 14, 2008, at 9:20 AM, Jan Schorn wrote:

Hi Michael,
creating Locations specifying projection parameters works fine.

Creating Locations from georeferenced file ( http://atlastenerife.es/TeIDE2/Descarga_Publica.do?fichero=830 ) causes an 'Error de la aplicación' ;-). Both versions, the 6.2.2 (64 bit) and 6.2.3 (32 bit) one, are displaying the same error log (see below).
The file used doesn't make problems importing it into a location.

Good luck :slight_smile:
Jan

Error: /usr/bin/x-terminal-emulator: ...

*Details:*

/usr/bin/x-terminal-emulator: to set an icon, please use -name <profile> and set a profile icon
/usr/bin/x-terminal-emulator: to set an icon, please use -name <profile> and set a profile icon
  while executing
"exec -- $env(GISBASE)/etc/grass-xterm-wrapper -T g.proj -n g.proj -e $env(GISBASE)/etc/grass-run.sh g.proj -c georef=$filepath location=$fileLocation"
  invoked from within
".fileloc.def invoke"
  ("uplevel" body line 1)
  invoked from within
"uplevel #0 [list $w invoke]"
  (procedure "tk::ButtonUp" line 22)
  invoked from within
"tk::ButtonUp .fileloc.def"
  (command bound to event)

Michael Barton escribió:

Jan,

Is EPSG location creation the only thing that fails? Can you create locations from georeferenced files and by specifying projection parameters?

I just tried creating a location from EPSG code 4326 and it worked fine in GRASS 6.3 compiled a few days ago. I don't know if this is a problem related to 6.2 or not

Glynn Clements discussed a problem with shared libraries in Linux that might or might not be a help. I am copying it below.

Michael
____________________
C. Michael Barton, Professor of Anthropology
Director of Graduate Studies
School of Human Evolution & Social Change
Center for Social Dynamics & Complexity
Arizona State University

Phone: 480-965-6262
Fax: 480-965-7671
www: <www.public.asu.edu/~cmbarton>

======== shared library post ==============
Date: Sun, 13 Jan 2008 23:34:52 +0000
From: Glynn Clements <glynn@gclements.plus.com>
Subject: Re: [GRASS-user] Error creating new mapset
To: "Jose A. Ruiz-Arias" <jararias@ujaen.es>
Cc: grass-user@lists.osgeo.org
Message-ID: <18314.40988.419833.583423@cerise.gclements.plus.com>
Content-Type: text/plain; charset=us-ascii

Jose A. Ruiz-Arias wrote:

i have installed GRASS-6.2.3 from source code with no apparent errors during
configuration, compilation and installation. However, when i run grass and
try to create a new mapset i get next error:

g.region: error while loading shared libraries: libgdal.so.1: cannot open
shared object file: Error 40

In fact, when i was setting the projection parameters and chose a UTM
projection, the program did not ask me for the UTM zone, the ellipsoid and
the datum.

In the GRASS configure process I explicitely used the
flag --with-gdal=/usr/local/bin/gdal-config and there were no errors. I
checked for the shared library and it is placed in /usr/local/lib directory.

Before the GRASS installation, I installed the GDAL/OGR bundle from the source
code, with netcdf support, and the GRASS support disabled. Again, there were
no apparent errors. Next I installed the gdal-grass plugin (gdal-grass-1.4.3
with the following options:
configure --with-gdal=/usr/local/bin/gdal-config --with-grass=/usr/local/grass-6.2.3)

I did not detect any problem during the installation of these bundles. Anyone
knows about the problem??

Most systems won't load shared libraries from /usr/local/lib without
some additional configuration.

For Linux, you need to either set the LD_LIBRARY_PATH environment
variable to a path which includes /usr/local/lib, or add
/usr/local/lib to /etc/ld.so.conf then run ldconfig (as root).

On Jan 14, 2008, at 9:20 AM, Jan Schorn wrote:

Hi Michael,
creating Locations specifying projection parameters works fine.

Creating Locations from georeferenced file ( http://atlastenerife.es/TeIDE2/Descarga_Publica.do?fichero=830 ) causes an 'Error de la aplicación' ;-). Both versions, the 6.2.2 (64 bit) and 6.2.3 (32 bit) one, are displaying the same error log (see below).
The file used doesn't make problems importing it into a location.

Error: /usr/bin/x-terminal-emulator: ...

*Details:*

/usr/bin/x-terminal-emulator: to set an icon, please use -name <profile> and set a profile icon
/usr/bin/x-terminal-emulator: to set an icon, please use -name <profile> and set a profile icon

>> while executing
>> "exec -- $env(GISBASE)/etc/grass-xterm-wrapper -T g.proj -n g.proj -e
>> $env(GISBASE)/etc/grass-run.sh g.proj -c georef=$filepath
>> location=$fileLocation"

This suggests that the x-terminal-emulator does not work the way it is called.

Try running the command in the terminal command line of any existing location (e.g. spearfish60), i.e.:

g.proj -c georef=$filepath location=$fileLocation

where you replace $filepath with the path to the georeferenced file and $fileLocation with the name of the location you wish to create.

Which terminal is your x-terminal-emulator ?

Moritz