[GRASS-dev] re: python grass problems on OSX (Incompatible library version for module)

I tried :

cd /Users/Shared/source/grass_trunk/

svn up

make distclean

export CXXFLAGS="-arch ppc -arch i386 -Os" ; export CFLAGS="-arch ppc -arch i386 -Os" ; export LDFLAGS="-arch ppc -arch i386 -Os" ; export GDAL_BIN=/Library/Frameworks/gdal.framework/unix/bin/ ; export NAD2BIN=/Library/Frameworks/PROJ.framework/Programs/nad2bin

./configure .. .. .. --prefix=/usr/local/

make

sudo make install

then i copied the the script i.img2rr inside the scripts directory :

cp i.img2rr /usr/local/grass-7.0.svn/scripts

chmod a+x /usr/local/grass-7.0.svn/scripts/i.img2rr

run grass70

GRASS 7.0.svn (spearfish60):~ > i.img2rr image1=geology
MPI running with 1 processors...
ERROR: Incompatible library version for module. You need to rebuild GRASS
        or untangle multiple installations.
GRASS 7.0.svn (spearfish60):~ >

i tried the command "ldd"
but it is not found on my system

a google search tell me about "otool" as an osx "ldd" replacment
inside grass shell :

otool -L `which i.img2rr`
/usr/local/grass-7.0.svn/scripts/i.img2rr: is not an object file

so itried it directly on the executable, but i haven't clue if these can help :

GRASS 7.0.svn (spearfish60):~ > otool -L /private/var/tmp/XcodeBuilds/Release/img2rr
/private/var/tmp/XcodeBuilds/Release/img2rr:
  @executable_path/../Frameworks/ossim.framework/Versions/A/ossim (compatibility version 1.0.0, current version 1.0.0)
  @executable_path/../Frameworks/OpenThreads.framework/Versions/A/OpenThreads (compatibility version 0.0.0, current version 1.0.0)
  /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.4.0)
  /usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current version 1.0.0)
  /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 88.3.10)
GRASS 7.0.svn (spearfish60):~ >

(attachments)

i.img2rr (839 Bytes)

On Mon, May 11, 2009 at 9:49 AM, massimo di stefano
<massimodisasha@yahoo.it> wrote:

I tried :

cd /Users/Shared/source/grass_trunk/

svn up

make distclean

export CXXFLAGS="-arch ppc -arch i386 -Os" ; export CFLAGS="-arch ppc -arch
i386 -Os" ; export LDFLAGS="-arch ppc -arch i386 -Os" ; export
GDAL_BIN=/Library/Frameworks/gdal.framework/unix/bin/ ; export
NAD2BIN=/Library/Frameworks/PROJ.framework/Programs/nad2bin

./configure .. .. .. --prefix=/usr/local/

make

sudo make install

then i copied the the script i.img2rr inside the scripts directory :

cp i.img2rr /usr/local/grass-7.0.svn/scripts

chmod a+x /usr/local/grass-7.0.svn/scripts/i.img2rr

run grass70

GRASS 7.0.svn (spearfish60):~ > i.img2rr image1=geology
MPI running with 1 processors...
ERROR: Incompatible library version for module. You need to rebuild GRASS
or untangle multiple installations.
GRASS 7.0.svn (spearfish60):~ >

i tried the command "ldd"
but it is not found on my system

a google search tell me about "otool" as an osx "ldd" replacment
inside grass shell :

otool -L `which i.img2rr`
/usr/local/grass-7.0.svn/scripts/i.img2rr: is not an object file

otool won't work on scripts but on binaries.

please try
otool -L `which g.parser`

Additionally, you can do shell debugging by changing the first line of
your script from
#!/bin/sh
to
#!/bin/sh -x

This may help to see which libs are picked up.

Markus

adding the debugging symbols to the script :

GRASS 7.0.svn (spearfish60):~ > i.img2rr image1=geology
+ '[' -z /usr/local/grass-7.0.svn ']'
+ '[' image1=geology '!=' @ARGS_PARSED@ ']'
+ exec g.parser /usr/local/grass-7.0.svn/scripts/i.img2rr image1=geology
+ '[' -z /usr/local/grass-7.0.svn ']'
+ '[' @ARGS_PARSED@ '!=' @ARGS_PARSED@ ']'
++ g.gisenv
+ eval 'GISDBASE='\''/Users/Shared/grassdata'\'';' 'LOCATION_NAME='\''spearfish60'\'';' 'MAPSET='\''PERMANENT'\'';' 'GRASS_GUI='\''wxpython'\'';'
++ GISDBASE=/Users/Shared/grassdata
++ LOCATION_NAME=spearfish60
++ MAPSET=PERMANENT
++ GRASS_GUI=wxpython
+ : /usr/local/grass-7.0.svn /Users/Shared/grassdata spearfish60 PERMANENT
+ LOCATION=/Users/Shared/grassdata/spearfish60/PERMANENT
+ export DYLD_FRAMEWORK_PATH=/var/tmp/XcodeBuilds/Release
+ DYLD_FRAMEWORK_PATH=/var/tmp/XcodeBuilds/Release
+ export OSSIM_PREFS_FILE=/Users/sasha/Desktop/ossim_preference
+ OSSIM_PREFS_FILE=/Users/sasha/Desktop/ossim_preference
+ /private/var/tmp/XcodeBuilds/Release/img2rr /Users/Shared/grassdata/spearfish60/PERMANENT/cellhd/geology
MPI running with 1 processors...
ERROR: Incompatible library version for module. You need to rebuild GRASS
        or untangle multiple installations.
GRASS 7.0.svn (spearfish60):~ >

these the output from otool :

GRASS 7.0.svn (spearfish60):~ > otool -L `which g.parser`
/usr/local/grass-7.0.svn/bin/g.parser:
  /usr/local/grass-7.0.svn/lib/libgrass_gis.dylib (compatibility version 7.0.0, current version 7.0.0)
  /usr/local/grass-7.0.svn/lib/libgrass_datetime.dylib (compatibility version 7.0.0, current version 7.0.0)
  /usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.3)
  /usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current version 1.0.0)
  /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 111.1.3)
GRASS 7.0.svn (spearfish60):~ >

Il giorno 11/mag/09, alle ore 10:14, Markus Neteler ha scritto:

On Mon, May 11, 2009 at 9:49 AM, massimo di stefano
<massimodisasha@yahoo.it> wrote:

I tried :

cd /Users/Shared/source/grass_trunk/

svn up

make distclean

export CXXFLAGS="-arch ppc -arch i386 -Os" ; export CFLAGS="-arch ppc -arch
i386 -Os" ; export LDFLAGS="-arch ppc -arch i386 -Os" ; export
GDAL_BIN=/Library/Frameworks/gdal.framework/unix/bin/ ; export
NAD2BIN=/Library/Frameworks/PROJ.framework/Programs/nad2bin

./configure .. .. .. --prefix=/usr/local/

make

sudo make install

then i copied the the script i.img2rr inside the scripts directory :

cp i.img2rr /usr/local/grass-7.0.svn/scripts

chmod a+x /usr/local/grass-7.0.svn/scripts/i.img2rr

run grass70

GRASS 7.0.svn (spearfish60):~ > i.img2rr image1=geology
MPI running with 1 processors...
ERROR: Incompatible library version for module. You need to rebuild GRASS
      or untangle multiple installations.
GRASS 7.0.svn (spearfish60):~ >

i tried the command "ldd"
but it is not found on my system

a google search tell me about "otool" as an osx "ldd" replacment
inside grass shell :

otool -L `which i.img2rr`
/usr/local/grass-7.0.svn/scripts/i.img2rr: is not an object file

otool won't work on scripts but on binaries.

please try
otool -L `which g.parser`

Additionally, you can do shell debugging by changing the first line of
your script from
#!/bin/sh
to
#!/bin/sh -x

This may help to see which libs are picked up.

Markus

Chiacchiera con i tuoi amici in tempo reale! http://it.yahoo.com/mail_it/foot/*http://it.messenger.yahoo.com

On Mon, May 11, 2009 at 10:40 AM, massimo di stefano
<massimodisasha@yahoo.it> wrote:

adding the debugging symbols to the script :

(well, it's just stepwise output - symbols is for binaries)

GRASS 7.0.svn (spearfish60):~ > i.img2rr image1=geology
+ '[' -z /usr/local/grass-7.0.svn ']'
+ '[' image1=geology '!=' @ARGS_PARSED@ ']'
+ exec g.parser /usr/local/grass-7.0.svn/scripts/i.img2rr image1=geology
+ '[' -z /usr/local/grass-7.0.svn ']'
+ '[' @ARGS_PARSED@ '!=' @ARGS_PARSED@ ']'
++ g.gisenv
+ eval 'GISDBASE='\''/Users/Shared/grassdata'\'';'
'LOCATION_NAME='\''spearfish60'\'';' 'MAPSET='\''PERMANENT'\'';'
'GRASS_GUI='\''wxpython'\'';'
++ GISDBASE=/Users/Shared/grassdata
++ LOCATION_NAME=spearfish60
++ MAPSET=PERMANENT
++ GRASS_GUI=wxpython
+ : /usr/local/grass-7.0.svn /Users/Shared/grassdata spearfish60 PERMANENT
+ LOCATION=/Users/Shared/grassdata/spearfish60/PERMANENT
+ export DYLD_FRAMEWORK_PATH=/var/tmp/XcodeBuilds/Release
+ DYLD_FRAMEWORK_PATH=/var/tmp/XcodeBuilds/Release
+ export OSSIM_PREFS_FILE=/Users/sasha/Desktop/ossim_preference
+ OSSIM_PREFS_FILE=/Users/sasha/Desktop/ossim_preference
+ /private/var/tmp/XcodeBuilds/Release/img2rr
/Users/Shared/grassdata/spearfish60/PERMANENT/cellhd/geology
MPI running with 1 processors...
ERROR: Incompatible library version for module. You need to rebuild GRASS
or untangle multiple installations.

ok, so the "bad" is in the /private/var/tmp/XcodeBuilds/Release/img2rr program.

otool -L /private/var/tmp/XcodeBuilds/Release/img2rr

?

Please compare to this output from otool on g.parser:

/usr/local/grass-7.0.svn/bin/g.parser:
/usr/local/grass-7.0.svn/lib/libgrass_gis.dylib (compatibility
version 7.0.0, current version 7.0.0)
/usr/local/grass-7.0.svn/lib/libgrass_datetime.dylib (compatibility
version 7.0.0, current version 7.0.0)
/usr/lib/libz.1.dylib (compatibility version 1.0.0, current version
1.2.3)
/usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current
version 1.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current
version 111.1.3)

curious if they match...

Markus