[pdal] pdal compilation breakage on ubuntu with geotiff

Howard Butler hobu.inc at gmail.com
Thu Aug 16 06:58:17 PDT 2012


Mike's assessment is probably what's going on.  I've only ever tested PDAL with external libgeotiff builds that were tracking the latest release. There's some mixups with geotiff and GDAL and libtiff all using cpl_serv.h, each with their own copy, that had install-order issues.

http://trac.osgeo.org/gdal/ticket/4374 and specifically http://trac.osgeo.org/gdal/attachment/ticket/4374/irc_discussion.txt might have some more info.

I think the solution is to use external libgeotiff.

Howard

On Aug 16, 2012, at 8:37 AM, Smith, Michael ERDC-CRREL-NH wrote:

> Doug,
> 
> You can use git over https. That shouldn't be blocked.
> 
> Libgeotiff is needed separately as all the imports from libgeotiff aren't available in gdal.
> 
> Mike
> 
> -- 
> Michael Smith
> Remote Sensing/GIS Center
> US Army Corps of Engineers
> 
> From: <Doug_Newcomb at fws.gov>
> Date: Thu, 16 Aug 2012 09:26:59 -0400
> To: <pdal at lists.osgeo.org>
> Subject: [pdal] pdal compilation breakage on ubuntu with geotiff
> 
> 
> Hi Folks,
>         Running Ubuntu 11.10 64 bit with the ubuntu-gis unstable ppa.  After reviewing some of the archived postings, I downloaded the zipped file version (my agency blocks git ports) of PDAL-af197b0 and the latest nightly trunk source of gdal, gdal-svn-trunk-20120816.zip   .  Gdal trunk  built and installed fine (--with-geotiff=internal) to /usr/local/lib .  I then tried to build pdal and got :
> 
> [ 43%] Building CXX object src/CMakeFiles/pdal.dir/drivers/las/GeotiffSupport.cpp.o
> In file included from /usr/local/include/cpl_conv.h:35:0,
>                  from /home/dnewcomb/Downloads/PDAL-PDAL-af197b0/src/drivers/las/GeotiffSupport.hpp:42,
>                  from /home/dnewcomb/Downloads/PDAL-PDAL-af197b0/src/drivers/las/GeotiffSupport.cpp:35:
> /usr/local/include/cpl_vsi.h:173:37: error: declaration of C function ‘void* _GTIFcalloc(size_t)’ conflicts with
> /usr/local/include/cpl_vsi.h:172:17: error: previous declaration ‘void* _GTIFcalloc(size_t*)’ here
> In file included from /usr/local/include/cpl_conv.h:36:0,
>                  from /home/dnewcomb/Downloads/PDAL-PDAL-af197b0/src/drivers/las/GeotiffSupport.hpp:42,
>                  from /home/dnewcomb/Downloads/PDAL-PDAL-af197b0/src/drivers/las/GeotiffSupport.cpp:35:
> /usr/local/include/cpl_error.h:50:15: error: conflicting declaration ‘CE_None’
> /usr/local/include/cpl_serv.h:168:5: error: ‘CE_None’ has a previous declaration as ‘CPLErr CE_None’
> /usr/local/include/cpl_error.h:52:18: error: conflicting declaration ‘CE_Warning’
> /usr/local/include/cpl_serv.h:170:5: error: ‘CE_Warning’ has a previous declaration as ‘CPLErr CE_Warning’
> /usr/local/include/cpl_error.h:53:18: error: conflicting declaration ‘CE_Failure’
> /usr/local/include/cpl_serv.h:171:5: error: ‘CE_Failure’ has a previous declaration as ‘CPLErr CE_Failure’
> /usr/local/include/cpl_error.h:54:16: error: conflicting declaration ‘CE_Fatal’
> /usr/local/include/cpl_serv.h:172:5: error: ‘CE_Fatal’ has a previous declaration as ‘CPLErr CE_Fatal’
> /usr/local/include/cpl_error.h:55:3: error: conflicting declaration ‘typedef enum CPLErr CPLErr’
> /usr/local/include/cpl_serv.h:173:3: error: ‘CPLErr’ has a previous declaration as ‘typedef enum CPLErr CPLErr’
> /usr/local/include/cpl_error.h:73:71: error: declaration of C function ‘void (* gtCPLSetErrorHandler(CPLErrorHandler))(CPLErr, int, const char*)’ conflicts with
> /usr/local/include/cpl_serv.h:186:14: error: previous declaration ‘void gtCPLSetErrorHandler(void (*)(CPLErr, int, const char*))’ here
> In file included from /home/dnewcomb/Downloads/PDAL-PDAL-af197b0/src/drivers/las/GeotiffSupport.hpp:42:0,
>                  from /home/dnewcomb/Downloads/PDAL-PDAL-af197b0/src/drivers/las/GeotiffSupport.cpp:35:
> /usr/local/include/cpl_conv.h:63:35: error: declaration of C function ‘void* gtCPLMalloc(size_t)’ conflicts with
> /usr/local/include/cpl_serv.h:147:15: error: previous declaration ‘void* gtCPLMalloc(int)’ here
> /usr/local/include/cpl_conv.h:64:43: error: declaration of C function ‘void* gtCPLCalloc(size_t, size_t)’ conflicts with
> /usr/local/include/cpl_serv.h:148:15: error: previous declaration ‘void* gtCPLCalloc(int, int)’ here
> /usr/local/include/cpl_conv.h:65:44: error: declaration of C function ‘void* gtCPLRealloc(void*, size_t)’ conflicts with
> /usr/local/include/cpl_serv.h:149:15: error: previous declaration ‘void* gtCPLRealloc(void*, int)’ here
> make[2]: *** [src/CMakeFiles/pdal.dir/drivers/las/GeotiffSupport.cpp.o] Error 1
> make[1]: *** [src/CMakeFiles/pdal.dir/all] Error 2
> make: *** [all] Error 2
> 
> I freely admit that I am a cmake newbie, and not really a C programmer. Is there something obvious that I am missing?  Do I need to install libgeotiff separately and not use the internal version in gdal trunk?
> 
> Doug
> 
> 
> 
> Doug Newcomb             
> USFWS
> Raleigh, NC
> 919-856-4520 ext. 14 doug_newcomb at fws.gov
> ---------------------------------------------------------------------------------------------------------
> The opinions I express are my own and are not representative of the official policy of the U.S.Fish and Wildlife Service or Dept. of the Interior.   Life is too short for undocumented, proprietary data formats. _______________________________________________ pdal mailing list pdal at lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/pdal
> _______________________________________________
> pdal mailing list
> pdal at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/pdal

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/pdal/attachments/20120816/6eed6ab6/attachment.html>


More information about the pdal mailing list