[pgpointcloud] Chipper and Cache

Roger Bedell rbedell at coordinatesolutions.com
Thu Dec 26 01:13:53 PST 2013


Hi Howard and list,
I took a stab a building the latest PDAL using the OSGEO4W 64 bit
distribution, and finally succeeded, though not without some trials. My
build is very much focused on import/export LAS files from pgpointcloud.

A little collaboration would be appreciated, since I know nothing about
cmake. Here are some of the things I ran into:

First, I modified the hobu_windows.bat file to remove most everything not
needed for pgpointcloud and LAS. See below for the entire bat file.

Second, I ran osgeo4w 64 bit, and installed GDAL, libxml2, iconv, and
Python. Found that you have to name the OSGEO4W directory exactly as
specified, C:\OSGEO4W, not OSGEO4W64 as recommended by the installer.

Third, after getting an eternal wait for (running within a Visual Studio
2010 x64 cmd window)
"-- Looking for include file pthread.h"
I commented out the "find_package(Threads)" in the CMakeLists.txt file.
Now the bat file runs and creates the Visual Studio solution. (except it
hangs at the end of the bat file, cntrl-C to get out).
The solution loads fine into VS2010.

Fourth: the pdalcpp project would not link, couldn't find the pdalboost.lib
library.
Added C:/Temp/PDAL64/PDAL to the linker additional library directories for
the pdalcpp project.

Fifth: the pdal project doesn't build, 22 unresolved externs. I gave up on
that one.

Sixth: pdal_test also needs C:/Temp/PDAL64/PDAL  in the additional library
directories.
Gets 5 unresolved externs, all due to pdal::IndexedPointBuffer – perhaps
this no longer exists? Or is not in the internal boost lib?
I commented out //BOOST_AUTO_TEST_CASE(test_indexed) in PointBufferTest.cpp
Compiles.
Making sure that OSGEO4W is in the path, it runs, but with many errors,
apparently due to a lack of the test files.

Seventh: Strangely, pcpipeline.exe and pcinfo.exe are not built as part of
the solution.
Added a new project: pcpipeline using pcpipeline.cpp instead of pdal.cpp
It couldn't find appsupport.hpp.
Apparently Appsupport is missing from the Git? I have a copy from an
earlier build I did in August.
Now it builds, but 45 missing externs. Added pdalboost.lib; to the list of
libs in the linker. Succeeded.
Seems to run ok.
However, when testing an import that used to work with 0.9.8, I get:
C:\Temp\PDAL64\PDAL>pcpipeline -i importlasfile.xml
Requested to read 13858 points
Requested to write 13858 points
0Caught PDAL exception: ERROR:  column pcid (1) and patch pcid (2) are not
consi
stent

>From another email to this list, I see that this is a known issue, so I
haven't pursued it further.



Here is the bat file:

@echo off

:: This configure script is designed for the Win 64 pgPointCloud support,
which means
:: you have OSGeo4W installed, including GDAL.

:: LASZip has to be built separately, since it is not part of OSGEO4W 64
(yet)

:: This configure script expects to be run from the PDAL root directory.

:: Pick your CMake GENERATOR.  (NMake will pick up architecture (x32, x64)
from your environment)
rem GENERATOR="NMake Makefiles"
set GENERATOR="Visual Studio 10 Win64"
rem GENERATOR="Visual Studio 10"

:: Pick your build type
set BUILD_TYPE=Release
REM set BUILD_TYPE=Debug

:: Where is your PDAL build tree?
set PDAL_DIR=.

:: Where is your OSGeo4W installed (recommended basic way to satisfy
dependent libs)
set OSGEO4W_DIR=C:\OSGeo4W

:: Where is boost installed? Use the embedded boost lib
set PDAL_EMBED_BOOST=ON
rem set BOOST_DIR=c:\utils\boost_1_49_0
REM set BOOST_DIR=%PDAL_DIR%\boost

:: CARIS
set CARIS_ENABLED=OFF
rem set CARIS_INCLUDE_DIR=%CARIS_DIR%\include
rem set CARIS_LIBRARY=%CARIS_DIR%\caris.lib

:: GDAL
set GDAL_ENABLED=ON
set GDAL_INCLUDE_DIR=%OSGEO4W_DIR%\include
set GDAL_LIBRARY=%OSGEO4W_DIR%\lib\gdal_i.lib

:: LIBTIFF
set TIFF_ENABLED=ON
set TIFF_INCLUDE_DIR=%OSGEO4W_DIR%\include
set TIFF_LIBRARY=%OSGEO4W_DIR%\lib\libtiff_i.lib

:: GeoTIFF
set GEOTIFF_ENABLED=ON
set GEOTIFF_INCLUDE_DIR=%OSGEO4W_DIR%\include
set GEOTIFF_LIBRARY=%OSGEO4W_DIR%\lib\geotiff_i.lib

:: LASZIP: Not part of OSGEO4W 64 bit. Disable it temporarily.
rem set LASZIP_ENABLED=ON
rem set LASZIP_INCLUDE_DIR=%OSGEO4W_DIR%\include
rem set LASZIP_LIBRARY=%OSGEO4W_DIR%\lib\laszip.lib

:: Oracle Not needed.
set ORACLE_ENABLED=OFF
rem set ORACLE_HOME=%OSGEO4W_DIR%
REM set ORACLE_INCLUDE_DIR=%ORACLE_HOME%\include
REM set ORACLE_OCI_LIBRARY=%ORACLE_HOME%\lib\oci.lib

:: LibXML2
set LIBXML2_ENABLED=ON
set LIBXML2_INCLUDE_DIR=%OSGEO4W_DIR%\include
set LIBXML2_LIBRARIES=%OSGEO4W_DIR%\lib\libxml2.lib

:: IConv
set ICONV_ENABLED=ON
set ICONV_INCLUDE_DIR=%OSGEO4W_DIR%\include
set ICONV_LIBRARY=%OSGEO4W_DIR%\lib\iconv.lib

:: Python - no python
set PYTHON_ENABLED=OFF
REM set PYTHON_EXECUTABLE=%OSGEO4W_DIR\bin\python27.exe
REM set PYTHON_INCLUDE_DIR=%OSGEO4W_DIR\apps\python27\include
REM set PYTHON_LIBRARY=%OSGEO4W_DIR\apps\python27\libs\python27.lib

:: Set this if you are building SWIG bindings for C#. Visual Studio
:: needs to use this env var to find where boost lives.
set PDAL_SWIG_ENABLED=OFF
set PDAL_SWIG_BOOST_HOME=%BOOST_DIR%

:: OpenGL support, for pcview
set FREEGLUT_ENABLED=OFF
:: special config for mpg
if %USERDOMAIN% == T5500 set FREEGLUT_LIBRARY=d:\dev\freeglut-2.6.0-3.mp
\lib\freeglut.lib
if %USERDOMAIN% == T5500 set FREEGLUT_INCLUDE_DIR=d:\dev\freeglut-2.6.0-3.mp
\include
if %USERDOMAIN% == T5500 set FREEGLUT_ENABLED=ON
if %USERDOMAIN% == PDC set FREEGLUT_LIBRARY=c:\dev\freeglut-2.6.0-3.mp
\lib\freeglut.lib
if %USERDOMAIN% == PDC set FREEGLUT_INCLUDE_DIR=c:\dev\freeglut-2.6.0-3.mp
\include
if %USERDOMAIN% == PDC set FREEGLUT_ENABLED=ON

rem if EXIST CMakeCache.txt del CMakeCache.txt
cmake -G %GENERATOR% ^
    -DWITH_GDAL=%GDAL_ENABLED% ^
    -DCMAKE_INSTALL_PREFIX=D:\PDAL\package ^
    -DWITH_GEOTIFF=%GEOTIFF_ENABLED% ^
    -DWITH_ORACLE=%ORACLE_ENABLED% ^
    -DWITH_PGPOINTCLOUD=ON ^
    -DWITH_LASZIP=%LASZIP_ENABLED% ^
    -DWITH_LIBXML2=%LIBXML2_ENABLED% ^
    -DWITH_SWIG_CSHARP=%PDAL_SWIG_ENABLED% ^
    -DWITH_ICONV=%ICONV_ENABLED% ^
 -DWITH_PYTHON=%PYTHON_ENABLED% ^
-DWITH_NITRO=OFF ^
-DWITH_HEXER=OFF ^
 -DPYTHON_EXECUTABLE=%OSGEO4W_DIR%\bin\python.exe ^
-DPYTHON_INCLUDE_DIR=%OSGEO4W_DIR%\apps\python27\include ^
 -DPYTHON_LIBRARY=%OSGEO4W_DIR%\apps\python27\libs\python27.lib ^
-DNUMPY_INCLUDE_DIR=%OSGEO4W_DIR%\apps\python27\lib\site-packages\numpy\core\include
^
 -DNUMPY_VERSION=1.5.1 ^
    -DCMAKE_BUILD_TYPE=%BUILD_TYPE% ^
    -DCMAKE_VERBOSE_MAKEFILE=OFF ^
    %PDAL_DIR%

rem    -DBOOST_INCLUDEDIR=%BOOST_DIR% ^
rem -DNUMPY_INCLUDE_DIR=%OSGEO4W_DIR%\apps\python27\lib\site-packages\numpy\core\include
^
rem -DPYTHONPATH=%OSGEO4W_DIR%\apps\python27\lib\site-packages ^
rem -DPYTHON_LIBRARY=%PYTHON_LIBRARY% ^

Best regards,
Roger


On Thu, Dec 19, 2013 at 4:32 PM, Howard Butler <hobu.inc at gmail.com> wrote:

>
> On Dec 18, 2013, at 2:44 PM, Roger Bedell <rbedell at coordinatesolutions.com>
> wrote:
>
> > Hi Howard,
> > Did you ever do this OSGeo4W build? I'm about to import another 3TB of
> las files, and some more speed would be appreciated.
>
> Nope. I spent (wasted) an afternoon trying to get 64bit builds to work on
> Win8 and frustratingly gave up. I will probably give it another go once
> PDAL 1.0 is released, which is still on target for before the end of the
> year.
>
> If anyone else has 64bit PDAL windows builds, or has the recipe to get
> them, I'd be happy to collaborate.
>
> Howard
>



-- 
Roger Bedell
Coordinate Solutions Inc.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/pgpointcloud/attachments/20131226/bfc6d6eb/attachment.html>


More information about the pgpointcloud mailing list