So let me explain where I’m at with libLAS.
I recompiled boost 1.5.4 for 64 bit only (it will no longer compile 32_64 it seems) and fixed a known error in boost (manually delete the comma at the end of the list on line 117 of /boost-snow/include/boost/interprocess/errors.hpp)
I’ve got libLAS 1.8
Here is the workflow I used last time.
cd to liblas source folder
mkdir makefiles
cd makefiles
export BOOST_ROOT="/Users/cmbarton/Dropbox/GRASS_dropbox/compiling/boost-snow” ## my path to boost
Then I run cmake
Originally, I did this
cmake -G “Unix Makefiles” -D CMAKE_OSX_ARCHITECTURES=“i386;x86_64" -D CMAKE_OSX_SYSROOT="/Developer/SDKs/MacOSX10.7.sdk” -D GDAL_CONFIG=/Library/Frameworks/GDAL.framework/Programs/gdal-config -D GEOTIFF_INCLUDE_DIR=/Library/Frameworks/UnixImageIO.framework/unix/include -D GEOTIFF_LIBRARY=/Library/Frameworks/UnixImageIO.framework/unix/lib/libgeotiff.dylib …/
cmake ran fine, but make bombed with
clang: error: invalid arch name '-arch “i386’
So I tried it 64 bit only since I compiled boost for 64 bit only.
cmake -G “Unix Makefiles” -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 GEOTIFF_INCLUDE_DIR=“/Library/Frameworks/UnixImageIO.framework/unix/include” -D GEOTIFF_LIBRARY=“/Library/Frameworks/UnixImageIO.framework/unix/lib/libgeotiff.dylib” -D CMAKE_VERBOSE_MAKEFILE=true …/
Again, cmake is fine but make bombed. Here is the complete error
– The C compiler identification is Clang 5.1.0
– The CXX compiler identification is Clang 5.1.0
CMake Warning at /Applications/CMake 2.8-12.app/Contents/share/cmake-2.8/Modules/Platform/Darwin.cmake:179 (message):
Ignoring CMAKE_OSX_SYSROOT value:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk
because the directory does not exist.
Call Stack (most recent call first):
/Applications/CMake 2.8-12.app/Contents/share/cmake-2.8/Modules/CMakeSystemSpecificInformation.cmake:36 (include)
CMakeLists.txt:9 (project)
– Check for working C compiler: /usr/bin/cc
– Check for working C compiler: /usr/bin/cc – works
– Detecting C compiler ABI info
– Detecting C compiler ABI info - failed
– Check for working CXX compiler: /usr/bin/c++
– Check for working CXX compiler: /usr/bin/c++ – works
– Detecting CXX compiler ABI info
– Detecting CXX compiler ABI info - failed
– Setting libLAS build type - Release
– Searching for Boost 1.38+ - done
– Looking for include file pthread.h
– Looking for include file pthread.h - not found
– Could NOT find Threads (missing: Threads_FOUND)
– Boost version: 1.54.0
– Found the following Boost libraries:
– program_options
– thread
– system
– iostreams
– filesystem
– Searching for LASzip 2.0.1+ library
– Could NOT find LASzip (missing: LASZIP_LIBRARY LASZIP_INCLUDE_DIR) (Required is at least version “2.0.1”)
– Searching for GDAL 1.7.0+ library
– Found acceptable GDAL version 1.11.2
– Found GDAL: /lib.dylib (Required is at least version “1.7.0”)
– Searching for GeoTIFF 1.2.5+ library
– Found GeoTIFF version: 1.4.0
– Found GeoTIFF: /Library/Frameworks/UnixImageIO.framework/unix/lib/libgeotiff.dylib (Required is at least version “1.2.5”)
– Found TIFF: /opt/local/lib/libtiff.dylib (found version “3.9.5”)
– Enable libLAS utilities to build - done
– Enable libLAS unit tests to build - done
– Configuring done
– Generating done
– Build files have been written to: /Users/cmbarton/Dropbox/GRASS_dropbox/compiling/libLAS-1.8.0/makefiles
cmb-imaccsdc:makefiles cmbarton$ make
“/Applications/CMake 2.8-12.app/Contents/bin/cmake” -H/Users/cmbarton/Dropbox/GRASS_dropbox/compiling/libLAS-1.8.0 -B/Users/cmbarton/Dropbox/GRASS_dropbox/compiling/libLAS-1.8.0/makefiles --check-build-system CMakeFiles/Makefile.cmake 0
“/Applications/CMake 2.8-12.app/Contents/bin/cmake” -E cmake_progress_start /Users/cmbarton/Dropbox/GRASS_dropbox/compiling/libLAS-1.8.0/makefiles/CMakeFiles /Users/cmbarton/Dropbox/GRASS_dropbox/compiling/libLAS-1.8.0/makefiles/CMakeFiles/progress.marks
/Applications/Xcode.app/Contents/Developer/usr/bin/make -f CMakeFiles/Makefile2 all
/Applications/Xcode.app/Contents/Developer/usr/bin/make -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/depend
cd /Users/cmbarton/Dropbox/GRASS_dropbox/compiling/libLAS-1.8.0/makefiles && “/Applications/CMake 2.8-12.app/Contents/bin/cmake” -E cmake_depends “Unix Makefiles” /Users/cmbarton/Dropbox/GRASS_dropbox/compiling/libLAS-1.8.0 /Users/cmbarton/Dropbox/GRASS_dropbox/compiling/libLAS-1.8.0/src /Users/cmbarton/Dropbox/GRASS_dropbox/compiling/libLAS-1.8.0/makefiles /Users/cmbarton/Dropbox/GRASS_dropbox/compiling/libLAS-1.8.0/makefiles/src /Users/cmbarton/Dropbox/GRASS_dropbox/compiling/libLAS-1.8.0/makefiles/src/CMakeFiles/las.dir/DependInfo.cmake --color=
Scanning dependencies of target las
/Applications/Xcode.app/Contents/Developer/usr/bin/make -f src/CMakeFiles/las.dir/build.make src/CMakeFiles/las.dir/build
“/Applications/CMake 2.8-12.app/Contents/bin/cmake” -E cmake_progress_report /Users/cmbarton/Dropbox/GRASS_dropbox/compiling/libLAS-1.8.0/makefiles/CMakeFiles 3
[ 1%] Building CXX object src/CMakeFiles/las.dir/detail/index/indexcell.cpp.o
cd /Users/cmbarton/Dropbox/GRASS_dropbox/compiling/libLAS-1.8.0/makefiles/src && /usr/bin/c++ -DHAVE_GDAL=1 -DHAVE_LIBGEOTIFF=1 -Dlas_EXPORTS -stdlib=libstdc++ -Wextra -Wall -Wno-unused-parameter -Wno-unused-variable -Wpointer-arith -Wcast-align -Wcast-qual -Wfloat-equal -Wredundant-decls -Wno-long-long -O3 -DNDEBUG -arch “x86_64 -D CMAKE_OSX_SYSROOT=/Developer/SDKs/MacOSX10.7.sdk” -fPIC -I/Users/cmbarton/Dropbox/GRASS_dropbox/compiling/libLAS-1.8.0/src/…/include -I/Users/cmbarton/Dropbox/GRASS_dropbox/compiling/boost-snow/include -I/Library/Frameworks/GDAL.framework/Headers -I/Library/Frameworks/UnixImageIO.framework/unix/include -I/opt/local/include -o CMakeFiles/las.dir/detail/index/indexcell.cpp.o -c /Users/cmbarton/Dropbox/GRASS_dropbox/compiling/libLAS-1.8.0/src/detail/index/indexcell.cpp
clang: error: invalid arch name ‘-arch “x86_64’
make[2]: *** [src/CMakeFiles/las.dir/detail/index/indexcell.cpp.o] Error 1
make[1]: *** [src/CMakeFiles/las.dir/all] Error 2
make: *** [all] Error 2
It looks like it is misreading the architecture flag value
I’ve tried it without quotes around x86_64 and it acts like there are unmatched quotes in the configure string. But there are not. Is there a bug somewhere in a configure file? Where??? I can’t find any file with the CMAKE_OSX_ARCHITECTURES flag to look at.
I’m completely stumped.
Michael
···
On Wed, Sep 16, 2015 at 9:41 AM, William Kyngesburye <woklist@kyngchaos.com> wrote:
So the question is if GRASS supports one or the other library or both, or does it also use the tools in a script so it doesn’t matter.
GRASS uses only the library, not the tools, and is designed/tested/known to work only with libLAS.
I suppose there never was a need or will to compile it with LASlib which is coupled with partially non-FOSS LAStools (and you would need the FOSS libLAS’ tools anyway).