[GRASS-dev] GRASS will not not find laslib
Michael Barton
Michael.Barton at asu.edu
Thu Oct 8 18:33:26 PDT 2015
The first thing is to compile boost with 2 architectures. That might solve the whole thing
Michael Barton
School of Human Evolution &Social Change
Center for Social Dynamics & Complexity
Arizona State University
...Sent from my iPad
On Oct 8, 2015, at 5:14 PM, Anna Petrášová <kratochanna at gmail.com<mailto:kratochanna at gmail.com>> wrote:
On Thu, Oct 8, 2015 at 8:02 PM, Michael Barton <Michael.Barton at asu.edu<mailto:Michael.Barton at asu.edu>> wrote:
Nope.
It starts to launch and gets to the start up screen, but has this error:
Starting GRASS GIS...
Unable to import pyGRASS: dlopen(/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/macosx/dist/GRASS-7.0.app/Contents/MacOS/lib/libgrass_gis.7.0.1.dylib, 10): no suitable image found. Did find:
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/macosx/dist/GRASS-7.0.app/Contents/MacOS/lib/libgrass_gis.7.0.1.dylib: mach-o, but wrong architecture
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/macosx/dist/GRASS-7.0.app/Contents/MacOS/lib/libgrass_gis.7.0.1.dylib: mach-o, but wrong architecture
Some functionality will be not accessible
When I select a location/mapset and start GRASS, it bombs with the same error I reported the other day for the student with El Capitan:
GRASS 7.0.1 (Spain_fieldwork_medlands_ERTS89_Z30):~ > Unable to import pyGRASS: dlopen(/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/macosx/dist/GRASS-7.0.app/Contents/MacOS/lib/libgrass_gis.7.0.1.dylib, 10): no suitable image found. Did find:
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/macosx/dist/GRASS-7.0.app/Contents/MacOS/lib/libgrass_gis.7.0.1.dylib: mach-o, but wrong architecture
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/macosx/dist/GRASS-7.0.app/Contents/MacOS/lib/libgrass_gis.7.0.1.dylib: mach-o, but wrong architecture
Some functionality will be not accessible
Traceback (most recent call last):
File "/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/macosx/dist/GRASS-7.0.app/Contents/MacOS/gui/wxpython/wxgui.py", line 37, in <module>
from lmgr.frame import GMFrame
File "/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/macosx/dist/GRASS-7.0.app/Contents/MacOS/gui/wxpython/lmgr/frame.py", line 50, in <module>
from lmgr.layertree import LayerTree, LMIcons
File "/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/macosx/dist/GRASS-7.0.app/Contents/MacOS/gui/wxpython/lmgr/layertree.py", line 37, in <module>
from mapdisp.frame import MapFrame
File "/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/macosx/dist/GRASS-7.0.app/Contents/MacOS/gui/wxpython/mapdisp/frame.py", line 34, in <module>
from vdigit.toolbars import VDigitToolbar
File "/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/macosx/dist/GRASS-7.0.app/Contents/MacOS/gui/wxpython/vdigit/toolbars.py", line 30, in <module>
from iclass.digit import IClassVDigit
File "/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/macosx/dist/GRASS-7.0.app/Contents/MacOS/gui/wxpython/iclass/digit.py", line 23, in <module>
from vdigit.wxdisplay import DisplayDriver, TYPE_AREA
ImportError: cannot import name TYPE_AREA
I wonder if it's because of ctypes and the 32 vs 64 bit. Just to let you know, I fixed this 6 weeks ago in the sense that I moved the import of the digitizer stuff (which imports ctypes stuff) only when digitizer is required, so theoretically the gui should open, but digitzer and nviz wouldn't work anyway.
It seems that you need to compile laslib with both architectures, which you said was a problem, could you perhaps describe it? I suggest to wait for now if someone here has any idea.
I'm at a loss here.
Michael
____________________
C. Michael Barton
Director, Center for Social Dynamics & Complexity
Professor of Anthropology, School of Human Evolution & Social Change
Head, Graduate Faculty in Complex Adaptive Systems Science
Arizona State University
voice: 480-965-6262<tel:480-965-6262> (SHESC), 480-965-8130<tel:480-965-8130>/727-9746 (CSDC)
fax: 480-965-7671<tel:480-965-7671> (SHESC), 480-727-0709<tel:480-727-0709> (CSDC)
www: http://www.public.asu.edu/~cmbarton, http://csdc.asu.edu
On Oct 8, 2015, at 4:58 PM, Michael Barton <Michael.Barton at asu.edu<mailto:Michael.Barton at asu.edu>> wrote:
I got errors in...
Errors in:
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/scripts/v.what.strds
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.create
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.support
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.topology
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.list
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.info<http://t.info>
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.merge
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.remove
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.sample
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.register
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.unregister
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.rast.accumulate
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.rast.accdetect
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.rast.aggregate
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.rast.aggregate.ds
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.rast.colors
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.rast.to.rast3
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.rast.univar
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.rast.list
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.rast.mapcalc
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.rast.neighbors
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.rast.series
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.rast.export
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.rast.out.vtk
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.rast.import
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.rast.gapfill
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.rast.extract
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.rast3d.list
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.rast3d.extract
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.rast3d.mapcalc
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.rast3d.univar
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.rename
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.select
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.snap
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.shift
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.vect.list
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.vect.db.select
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.vect.export
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.vect.extract
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.vect.import
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.vect.what.strds
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.vect.observe.strds
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/temporal/t.vect.univar
/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/visualization/wximgview
--
In case of errors please change into the directory with error and run 'make'.
If you get multiple errors, you need to deal with them in the order they
appear in the error log. If you get an error building a library, you will
also get errors from anything which uses the library.
--
Finished compilation: Thu Oct 8 16:51:28 MST 2015
make: *** [default] Error 1
Switching to the relevant folder and making again fixed the tgis and v.what.strds problems, meaning that this is a makefile problem in GRASS 7.0.1
But wximgview would not compile with what appears to be a 32/64 bit conflict
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [/Users/cmbarton/grass_source/release_20150730_grass_7_0_1/dist.x86_64-apple-darwin14.5.0/bin/wximgview] Error 1
I will make a test binary anyway. If it launches, I'll send you a link to try. Not sure what to do about wximgview.
Michael
____________________
C. Michael Barton
Director, Center for Social Dynamics & Complexity
Professor of Anthropology, School of Human Evolution & Social Change
Head, Graduate Faculty in Complex Adaptive Systems Science
Arizona State University
voice: 480-965-6262<tel:480-965-6262> (SHESC), 480-965-8130<tel:480-965-8130>/727-9746 (CSDC)
fax: 480-965-7671<tel:480-965-7671> (SHESC), 480-727-0709<tel:480-727-0709> (CSDC)
www: http://www.public.asu.edu/~cmbarton, http://csdc.asu.edu<http://csdc.asu.edu/>
On Oct 8, 2015, at 4:52 PM, Michael Barton <Michael.Barton at asu.edu<mailto:Michael.Barton at asu.edu>> wrote:
If I configure only for x86_64, it configures. I'm building now to see if it actually makes and runs. I'm concerned most about wxPython 2.8.12, which is still 32 bit. We'll see if the workaround that William came up with still works.
Michael
____________________
C. Michael Barton
Director, Center for Social Dynamics & Complexity
Professor of Anthropology, School of Human Evolution & Social Change
Head, Graduate Faculty in Complex Adaptive Systems Science
Arizona State University
voice: 480-965-6262<tel:480-965-6262> (SHESC), 480-965-8130<tel:480-965-8130>/727-9746 (CSDC)
fax: 480-965-7671<tel:480-965-7671> (SHESC), 480-727-0709<tel:480-727-0709> (CSDC)
www: http://www.public.asu.edu/~cmbarton, http://csdc.asu.edu<http://csdc.asu.edu/>
On Oct 8, 2015, at 4:39 PM, Anna Petrášová <kratochanna at gmail.com<mailto:kratochanna at gmail.com>> wrote:
On Thu, Oct 8, 2015 at 7:33 PM, Michael Barton <Michael.Barton at asu.edu<mailto:Michael.Barton at asu.edu>> wrote:
I could try that. I originally build liblas with dual architecture. But current OS X and boost choke on dual architecture. So I built it 64 bit. I assumed that that means I needed to build laslib also only 64 bit. If you think I can get away with dual architecture there, I can give it a try.
I don't know if it helps, I just assumed this could be the problem since it complaint about " file was built for archive which is not the architecture being linked (i386)". In the GRASS configure, you specify i386 and x86_64, but it can't find the i386 liblas. You can try changing GRASS configure to use only x86_64. But I have very vague understanding of how these things work, so I hope someone else could help.
Michael
____________________
C. Michael Barton
Director, Center for Social Dynamics & Complexity
Professor of Anthropology, School of Human Evolution & Social Change
Head, Graduate Faculty in Complex Adaptive Systems Science
Arizona State University
voice: 480-965-6262<tel:480-965-6262> (SHESC), 480-965-8130<tel:480-965-8130>/727-9746 (CSDC)
fax: 480-965-7671<tel:480-965-7671> (SHESC), 480-727-0709<tel:480-727-0709> (CSDC)
www: http://www.public.asu.edu/~cmbarton, http://csdc.asu.edu<http://csdc.asu.edu/>
On Oct 8, 2015, at 4:07 PM, Anna Petrášová <kratochanna at gmail.com<mailto:kratochanna at gmail.com>> wrote:
On Thu, Oct 8, 2015 at 6:26 PM, Michael Barton <Michael.Barton at asu.edu<mailto:Michael.Barton at asu.edu>> wrote:
I built boost with both bjam and b2 for i86_64. Here are the setups I used:
cd /Users/Shared/grass_dev/boost_1_59_0
edit /Users/cmbarton/grass_source/LAS/boost_1_59_0/tools/build/src/tools/darwin.jam to delete -gdwarf-2 ]
export CXXFLAGS=-stdlib=libstdc++
./bootstrap.sh --prefix=/Users/cmbarton/grass_source/LAS/boostlib --without-libraries=python
## attempt 1
./bjam variant=release link=static --without-mpi -j4 macosx-version=10.7 macosx-version-min=10.7 architecture=x86 address-model=64 install
## attempt 2
./b2 variant=release link=static --without-mpi -j4 macosx-version=10.7 macosx-version-min=10.7 cxxflags="-arch x86_64"
I built liblas for i86_64. I initially set the prefix to put all the liblas files into a local directory where I could get them for packaging. Then I did it again letting them go into /usr/local. In all cases I get this same error. This is with installing it into a nice local folder.
xport BOOST_ROOT="/Users/cmbarton/grass_source/LAS/boostlib"
export BOOST_INCLUDEDIR="/Users/cmbarton/grass_source/LAS/boostlib/include"
cmake -G "Unix Makefiles" \
-D CMAKE_INSTALL_PREFIX="/Users/cmbarton/grass_source/LAS/liblasdist" \
-D CMAKE_OSX_ARCHITECTURES="x86_64" \
-D CMAKE_OSX_SYSROOT="/Developer/SDKs/MacOSX10.7.sdk" \
-D GDAL_CONFIG="/Library/Frameworks/GDAL.framework/Programs/gdal-config" \
-D GDAL_INCLUDE_DIR="/Library/Frameworks/GDAL.framework/Headers" \
-D GDAL_LIBRARY="/Library/Frameworks/GDAL.framework/unix/lib/libgdal.dylib" \
-D GEOTIFF_INCLUDE_DIR="/Library/Frameworks/UnixImageIO.framework/unix/include" \
-D GEOTIFF_LIBRARY="/Library/Frameworks/UnixImageIO.framework/unix/lib/libgeotiff.dylib" \
-D TIFF_INCLUDE_DIR="/Library/Frameworks/UnixImageIO.framework/Headers" \
-D TIFF_LIBRARY="/Library/Frameworks/UnixImageIO.framework/unix/lib/libtiff.dylib" \
-D CMAKE_VERBOSE_MAKEFILE=true ../
Here is the GRASS configure error:
1 warning generated.
configure:6164: checking whether to use libLAS
configure:6181: checking for liblas-config
configure:6238: gcc -o conftest -g -O2 -arch i386 -arch x86_64 -isysroot /Developer/SDKs/MacOSX10.7.sdk -I/usr/local/include -I/usr/local/include -I/Library/Frameworks/GDAL.framework/Headers -I/Library/Frameworks/UnixImageIO.framework/unix/include -I/Library/Frameworks/UnixImageIO.framework/Headers -arch i386 -arch x86_64 -isysroot /Developer/SDKs/MacOSX10.7.sdk -L/usr/local/lib conftest.c -L/usr/local/lib -llas -llas_c -L/Users/cmbarton/grass_source/LAS/boostlib/lib /Users/cmbarton/grass_source/LAS/boostlib/lib/libboost_program_options.a /Users/cmbarton/grass_source/LAS/boostlib/lib/libboost_thread.a /Library/Frameworks/GDAL.framework/unix/lib/libgdal.dylib /Library/Frameworks/UnixImageIO.framework/unix/lib/libgeotiff.dylib /Library/Frameworks/UnixImageIO.framework/unix/lib/libtiff.dylib 1>&5
ld: warning: ld: warning: ld: warning: ignoring file /usr/local/lib/liblas.dylib, file was built for x86_64 which is not the architecture being linked (i386): /usr/local/lib/liblas.dylibignoring file /usr/local/lib/liblas_c.dylib, file was built for x86_64 which is not the architecture being linked (i386): /usr/local/lib/liblas_c.dylibignoring file /Users/cmbarton/grass_source/LAS/boostlib/lib/libboost_program_options.a, file was built for archive which is not the architecture being linked (i386): /Users/cmbarton/grass_source/LAS/boostlib/lib/libboost_program_options.a
ld: warning: ignoring file /Users/cmbarton/grass_source/LAS/boostlib/lib/libboost_thread.a, file was built for archive which is not the architecture being linked (i386): /Users/cmbarton/grass_source/LAS/boostlib/lib/libboost_thread.a
Undefined symbols for architecture i386:
"_LASReader_Create", referenced from:
_main in conftest-68543b.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
configure: failed program was:
#line 6231 "configure"
#include "confdefs.h"
#include <liblas/capi/liblas.h>
int main() {
LASReader_Create("foo");
; return 0; }
Anna, I'm happy to pass on tricks once I get them to actually work. I'm keeping notes.
Thanks! I wonder if the problem can't be the line in the liblas config:
-D CMAKE_OSX_ARCHITECTURES="x86_64" \
how about this? (just a guess)
-D CMAKE_OSX_ARCHITECTURES="x86_64;i386"
Michael
____________________
C. Michael Barton
Director, Center for Social Dynamics & Complexity
Professor of Anthropology, School of Human Evolution & Social Change
Head, Graduate Faculty in Complex Adaptive Systems Science
Arizona State University
voice: 480-965-6262<tel:480-965-6262> (SHESC), 480-965-8130<tel:480-965-8130>/727-9746 (CSDC)
fax: 480-965-7671<tel:480-965-7671> (SHESC), 480-727-0709<tel:480-727-0709> (CSDC)
www: http://www.public.asu.edu/~cmbarton, http://csdc.asu.edu<http://csdc.asu.edu/>
On Oct 8, 2015, at 3:07 PM, Anna Petrášová <kratochanna at gmail.com<mailto:kratochanna at gmail.com>> wrote:
On Thu, Oct 8, 2015 at 5:24 PM, Michael Barton <Michael.Barton at asu.edu<mailto:Michael.Barton at asu.edu>> wrote:
With a lot of effort and some help, I've rebuilt liblas with new GDAL. Now GRASS will not find liblas with the same configuration script that I've used before. Here it is:
Was there some specific trick that you could share?
./configure --with-macosx-sdk=/Developer/SDKs/MacOSX10.7.sdk --with-freetype --with-freetype-includes="/Library/Frameworks/FreeType.framework/unix/include/freetype2 /Library/Frameworks/FreeType.framework/unix/include" --with-freetype-libs=/Library/Frameworks/FreeType.framework/unix/lib --with-gdal=/Library/Frameworks/GDAL.framework/Programs/gdal-config --with-proj --with-proj-includes=/Library/Frameworks/PROJ.framework/unix/include --with-proj-libs=/Library/Frameworks/PROJ.framework/unix/lib --with-proj-share=/Library/Frameworks/PROJ.framework/Resources/proj --with-geos=/Library/Frameworks/GEOS.framework/Versions/3/unix/bin/geos-config --with-jpeg-includes=/Library/Frameworks/UnixImageIO.framework/unix/include --with-jpeg-libs=/Library/Frameworks/UnixImageIO.framework/unix/lib --with-png-includes=/Library/Frameworks/UnixImageIO.framework/unix/include --with-png-libs=/Library/Frameworks/UnixImageIO.framework/unix/lib --with-tiff-includes=/Library/Frameworks/UnixImageIO.framework/unix/include --with-tiff-libs=/Library/Frameworks/UnixImageIO.framework/unix/lib --with-cairo --with-cairo-includes="/Library/Frameworks/cairo.framework/unix/include/cairo /Library/Frameworks/cairo.framework/unix/include" --with-cairo-libs=/Library/Frameworks/cairo.framework/unix/lib --with-cairo-ldflags="-lcairo" --without-postgres --without-mysql --with-sqlite --with-sqlite-libs=/Library/Frameworks/SQLite3.framework/unix/lib --with-sqlite-includes=/Library/Frameworks/SQLite3.framework/unix/include --with-fftw-includes=/Library/Frameworks/FFTW3.framework/unix/include --with-fftw-libs=/Library/Frameworks/FFTW3.framework/unix/lib --with-x --with-cxx --with-opengl=aqua --without-readline --prefix=/Applications --enable-macosx-app --with-python --with-wxwidgets=/usr/local/lib/wxPython-unicode-2.8.12.1/bin/wx-config --with-tcltk-includes="/Library/Frameworks/Tcl.framework/Headers /Library/Frameworks/Tk.framework/Headers /Library/Frameworks/Tk.framework/PrivateHeaders" --with-tcltk-libs="/usr/local/tcltk_active/lib" --with-macosx-archs="i386 x86_64" --with-liblas="/usr/local/bin/liblas-config" --with-opencl --with-nls --with-libs=/usr/local/lib --with-includes=/usr/local/include
FWIW, here is the uninformative error. Any thoughts???
There should be a log file from the configuration with more details, not sure what's its name though.
checking for liblas-config... /usr/local/bin/liblas-config
configure: error: *** Unable to locate libLAS library.
(yes liblas-config is exactly where I say it is)
Michael
____________________
C. Michael Barton
Director, Center for Social Dynamics & Complexity
Professor of Anthropology, School of Human Evolution & Social Change
Head, Graduate Faculty in Complex Adaptive Systems Science
Arizona State University
voice: 480-965-6262<tel:480-965-6262> (SHESC), 480-965-8130<tel:480-965-8130>/727-9746 (CSDC)
fax: 480-965-7671<tel:480-965-7671> (SHESC), 480-727-0709<tel:480-727-0709> (CSDC)
www: http://www.public.asu.edu/~cmbarton, http://csdc.asu.edu<http://csdc.asu.edu/>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/grass-dev/attachments/20151009/ddce654e/attachment-0001.html>
More information about the grass-dev
mailing list