[GRASS-user] Using r.buffer on image with geographic coordinates

Markus Metz markus.metz.giswork at googlemail.com
Sun Apr 3 09:07:47 EDT 2011


On Wed, Mar 30, 2011 at 1:52 PM, Ned Horning <horning at amnh.org> wrote:
> Thanks for the help compiling with v.buffer. I think I'm running the correct
> version now but the function still does not complete properly. I pasted the
> last several lines from the terminal screen below. I have a feeling I ran
> out of memory. Any ideas about what I can try next?
>
Not sure if the "d.vect: free(): invalid" error means that d.vect
caused the problem.

You could try several things:
- update your grass-6.5 to r45873
- close the grass gui and other applications not really necessary
- now try v.buffer again

The process got killed while snapping boundaries which is rather
memory demanding. Memory consumption for vector operations like
snapping can be substantially reduced in grass 7, but grass 7 still
has only the broken version of v.buffer2 (to be fixed).

Alternatively you could use r.grow.distance on the rasterized version
and set all values larger than the desired buffer distance to NULL

Markus M


>
> --
> D0/0: sa: 22
> D0/0: current: 22
> D0/0:   current = 29, last = 30, lcount = 1
> D0/0: sa: 28
> D0/0: current: 28
> D0/0:   current = 29, last = 34, lcount = 1
> D0/0: sa: 28
> D0/0: current: 28
> Building parts of topology...
> Building topology for vector map <testBuf>...
> Registering primitives...
> 1433691 primitives registered
> 119731336 vertices registered
> Number of nodes: 1433605
> Number of primitives: 1433691
> Number of points: 0
> Number of lines: 0
> Number of boundaries: 1433691
> Number of centroids: 0
> Number of areas: -
> Number of isles: -
> Snapping boundaries...
> Killed
> GRASS 6.5.svn (NHD_Test):~ >
>
> GRASS 6.5.svn (NHD_Test):~ > *** glibc detected *** d.vect: free(): invalid
> next size (normal): 0x0000000001a77fc0 ***
> ======= Backtrace: =========
> /lib/libc.so.6(+0x775b6)[0x7f32f1a055b6]
> /lib/libc.so.6(cfree+0x73)[0x7f32f1a0be83]
> /usr/local/grass-6.5.svn/lib/libgrass_vect.6.5.svn.so(Vect_destroy_line_struct+0x28)[0x7f32f35be638]
> d.vect(plot1+0xb0a)[0x40876a]
> d.vect(main+0x1314)[0x4072d4]
> /lib/libc.so.6(__libc_start_main+0xfd)[0x7f32f19acc4d]
> d.vect[0x403cd9]
> ======= Memory map: ========
> 00400000-0040c000 r-xp 00000000 08:05 206108
> /usr/local/grass-6.5.svn/bin/d.vect
> 0060b000-0060c000 r--p 0000b000 08:05 206108
> /usr/local/grass-6.5.svn/bin/d.vect
> 0060c000-0060d000 rw-p 0000c000 08:05 206108
> /usr/local/grass-6.5.svn/bin/d.vect
> 01a6a000-01a8b000 rw-p 00000000 00:00 0
>  [heap]
> 7f32e4000000-7f32e4021000 rw-p 00000000 00:00 0
> 7f32e4021000-7f32e8000000 ---p 00000000 00:00 0
> 7f32e8b3c000-7f32e8b48000 r-xp 00000000 08:05 531120
> /lib/libnss_files-2.11.1.so
> 7f32e8b48000-7f32e8d47000 ---p 0000c000 08:05 531120
> /lib/libnss_files-2.11.1.so
> 7f32e8d47000-7f32e8d48000 r--p 0000b000 08:05 531120
> /lib/libnss_files-2.11.1.so
> 7f32e8d48000-7f32e8d49000 rw-p 0000c000 08:05 531120
> /lib/libnss_files-2.11.1.so
> 7f32e8d49000-7f32e8d53000 r-xp 00000000 08:05 531542
> /lib/libnss_nis-2.11.1.so
> 7f32e8d53000-7f32e8f52000 ---p 0000a000 08:05 531542
> /lib/libnss_nis-2.11.1.so
> 7f32e8f52000-7f32e8f53000 r--p 00009000 08:05 531542
> /lib/libnss_nis-2.11.1.so
> 7f32e8f53000-7f32e8f54000 rw-p 0000a000 08:05 531542
> /lib/libnss_nis-2.11.1.so
> 7f32e8f54000-7f32e8f5c000 r-xp 00000000 08:05 527981
> /lib/libnss_compat-2.11.1.so
> 7f32e8f5c000-7f32e915b000 ---p 00008000 08:05 527981
> /lib/libnss_compat-2.11.1.so
> 7f32e915b000-7f32e915c000 r--p 00007000 08:05 527981
> /lib/libnss_compat-2.11.1.so
> 7f32e915c000-7f32e915d000 rw-p 00008000 08:05 527981
> /lib/libnss_compat-2.11.1.so
> 7f32e915d000-7f32e9160000 r-xp 00000000 08:05 523508
> /lib/libgpg-error.so.0.4.0
> 7f32e9160000-7f32e935f000 ---p 00003000 08:05 523508
> /lib/libgpg-error.so.0.4.0
> 7f32e935f000-7f32e9360000 r--p 00002000 08:05 523508
> /lib/libgpg-error.so.0.4.0
> 7f32e9360000-7f32e9361000 rw-p 00003000 08:05 523508
> /lib/libgpg-error.so.0.4.0
> 7f32e9361000-7f32e9371000 r-xp 00000000 08:05 134688
> /usr/lib/libtasn1.so.3.1.7
> 7f32e9371000-7f32e9570000 ---p 00010000 08:05 134688
> /usr/lib/libtasn1.so.3.1.7
> 7f32e9570000-7f32e9571000 r--p 0000f000 08:05 134688
> /usr/lib/libtasn1.so.3.1.7
> 7f32e9571000-7f32e9572000 rw-p 00010000 08:05 134688
> /usr/lib/libtasn1.so.3.1.7
> 7f32e9572000-7f32e958b000 r-xp 00000000 08:05 134634
> /usr/lib/libsasl2.so.2.0.23
> 7f32e958b000-7f32e978a000 ---p 00019000 08:05 134634
> /usr/lib/libsasl2.so.2.0.23
> 7f32e978a000-7f32e978b000 r--p 00018000 08:05 134634
> /usr/lib/libsasl2.so.2.0.23
> 7f32e978b000-7f32e978c000 rw-p 00019000 08:05 134634
> /usr/lib/libsasl2.so.2.0.23
> 7f32e978c000-7f32e97a2000 r-xp 00000000 08:05 531562
> /lib/libresolv-2.11.1.so
> 7f32e97a2000-7f32e99a1000 ---p 00016000 08:05 531562
> /lib/libresolv-2.11.1.so
> 7f32e99a1000-7f32e99a2000 r--p 00015000 08:05 531562
> /lib/libresolv-2.11.1.so
> 7f32e99a2000-7f32e99a3000 rw-p 00016000 08:05 531562
> /lib/libresolv-2.11.1.so
> 7f32e99a3000-7f32e99a5000 rw-p 00000000 00:00 0
> 7f32e99a5000-7f32e99a7000 r-xp 00000000 08:05 523515
> /lib/libkeyutils-1.2.so
> 7f32e99a7000-7f32e9ba6000 ---p 00002000 08:05 523515
> /lib/libkeyutils-1.2.so
> 7f32e9ba6000-7f32e9ba7000 r--p 00001000 08:05 523515
> /lib/libkeyutils-1.2.so
> 7f32e9ba7000-7f32e9ba8000 rw-p 00002000 08:05 523515
> /lib/libkeyutils-1.2.so
> 7f32e9ba8000-7f32e9baf000 r-xp 00000000 08:05 134268
> /usr/lib/libkrb5support.so.0.1
> 7f32e9baf000-7f32e9dae000 ---p 00007000 08:05 134268
> /usr/lib/libkrb5support.so.0.1
> 7f32e9dae000-7f32e9daf000 r--p 00006000 08:05 134268
> /usr/lib/libkrb5support.so.0.1
> 7f32e9daf000-7f32e9db0000 rw-p 00007000 08:05 134268
> /usr/lib/libkrb5support.so.0.1
> 7f32e9db0000-7f32e9dd4000 r-xp 00000000 08:05 132675
> /usr/lib/libk5crypto.so.3.1
> 7f32e9dd4000-7f32e9fd4000 ---p 00024000 08:05 132675
> /usr/lib/libk5crypto.so.3.1
> 7f32e9fd4000-7f32e9fd5000 r--p 00024000 08:05 132675
> /usr/lib/libk5crypto.so.3.1
> 7f32e9fd5000-7f32e9fd6000 rw-p 00025000 08:05 132675
> /usr/lib/libk5crypto.so.3.1
> 7f32e9fd6000-7f32e9fed000 r-xp 00000000 08:05 527976
> /lib/libnsl-2.11.1.so
> 7f32e9fed000-7f32ea1ec000 ---p 00017000 08:05 527976
> /lib/libnsl-2.11.1.so
> 7f32ea1ec000-7f32ea1ed000 r--p 00016000 08:05 527976
> /lib/libnsl-2.11.1.so
> 7f32ea1ed000-7f32ea1ee000 rw-p 00017000 08:05 527976
> /lib/libnsl-2.11.1.so
> 7f32ea1ee000-7f32ea1f0000 rw-p 00000000 00:00 0
> 7f32ea1f0000-7f32ea265000 r-xp 00000000 08:05 523504
> /lib/libgcrypt.so.11.5.2
> 7f32ea265000-7f32ea464000 ---p 00075000 08:05 523504
> /lib/libgcrypt.so.11.5.2
> 7f32ea464000-7f32ea465000 r--p 00074000 08:05 523504
> /lib/libgcrypt.so.11.5.2
> 7f32ea465000-7f32ea468000 rw-p 00075000 08:05 523504
> /lib/libgcrypt.so.11.5.2
> 7f32ea468000-7f32ea504000 r-xp 00000000 08:05 134182
> /usr/lib/libgnutls.so.26.14.12
> 7f32ea504000-7f32ea703000 ---p 0009c000 08:05 134182
> /usr/lib/libgnutls.so.26.14.12
> 7f32ea703000-7f32ea709000 r--p 0009b000 08:05 134182
> /usr/lib/libgnutls.so.26.14.12
> 7f32ea709000-7f32ea70a000 rw-p 000a1000 08:05 134182
> /usr/lib/libgnutls.so.26.14.12
> 7f32ea70a000-7f32ea717000 r-xp 00000000 08:05 132150
> /usr/lib/liblber-2.4.so.2.5.4
>
>
> On 03/29/2011 03:00 AM, Markus Neteler wrote:
>>
>> On Tue, Mar 29, 2011 at 8:27 AM, Markus Metz
>> <markus.metz.giswork at googlemail.com>  wrote:
>> ...
>>>
>>> If you ran make in the v.buffer directory and afterwards configure,
>>> make and make install in /usr/local/src/grass6_devel, you would end up
>>> with v.buffer2.
>>>
>>> 1. run configure, make, but not make install in
>>> /usr/local/src/grass6_devel
>>>
>>> 2. run make in the v.buffer directory, watch out for errors to make
>>> sure it compiles all right
>>>
>>> 3. run make install in /usr/local/src/grass6_devel, but not again
>>> configure and/or make
>>>
>>> 4. that should give you the original v.buffer
>>
>> An alternative: simply modify
>>   vector/Makefile
>> to point to v.buffer and not v.buffer2...
>>
>> Markus
>>
>
>


More information about the grass-user mailing list