Thanks Howard!  Throwing in a newer version of Libgeotiff is not a problem.  I'll test the changes with cairo.  <div><br></div><div>Doug<br><div><br></div><div><br><br><div class="gmail_quote">On Wed, Feb 20, 2013 at 12:43 PM, Howard Butler <span dir="ltr"><<a href="mailto:hobu.inc@gmail.com" target="_blank">hobu.inc@gmail.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Doug,<br>
<br>
I have pushed some changes that should take care of the cairo detection issues.<br>
<br>
As for this geotiff one, I think the issue was not having a new enough libtiff, libgeotiff, and GDAL.  All three of these libraries unfortunately ship slightly different cpl_serv.h files, and there's a bunch of unfortunate #ifdef magic to pick the correct ones depending on the situation.<br>


<br>
A new enough GDAL should be 1.9.x, because I'm using that in other situations and things link/compile ok.<br>
<br>
An incompatible libtiff might be the one that's causing the conflict.<br>
<br>
Catch me on IRC for interactive debugging if you're still stuck.<br>
<span class="HOEnZb"><font color="#888888"><br>
Howard<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
On Feb 16, 2013, at 4:23 PM, Doug Newcomb <<a href="mailto:newcomb.ttg@gmail.com">newcomb.ttg@gmail.com</a>> wrote:<br>
<br>
> OK,<br>
> I got this with Libgeotiff 1.3:<br>
> ---------------------------------------------------------------------------------------------------------------------------------------------------------<br>
><br>
> In file included from /usr/local/include/cpl_conv.h:35:0,<br>
>                  from /usr/local/PDAL-master/src/drivers/las/GeotiffSupport.hpp:42,<br>
>                  from /usr/local/PDAL-master/src/drivers/las/GeotiffSupport.cpp:35:<br>
> /usr/local/include/cpl_vsi.h:171:35: error: declaration of C function ‘void* _GTIFcalloc(size_t)’ conflicts with<br>
> /usr/local/include/cpl_vsi.h:170:17: error: previous declaration ‘void* _GTIFcalloc(size_t*)’ here<br>
> In file included from /usr/local/include/cpl_conv.h:36:0,<br>
>                  from /usr/local/PDAL-master/src/drivers/las/GeotiffSupport.hpp:42,<br>
>                  from /usr/local/PDAL-master/src/drivers/las/GeotiffSupport.cpp:35:<br>
> /usr/local/include/cpl_error.h:50:15: error: conflicting declaration ‘CE_None’<br>
> /usr/local/include/cpl_serv.h:168:5: error: ‘CE_None’ has a previous declaration as ‘CPLErr CE_None’<br>
> /usr/local/include/cpl_error.h:52:18: error: conflicting declaration ‘CE_Warning’<br>
> /usr/local/include/cpl_serv.h:170:5: error: ‘CE_Warning’ has a previous declaration as ‘CPLErr CE_Warning’<br>
> /usr/local/include/cpl_error.h:53:18: error: conflicting declaration ‘CE_Failure’<br>
> /usr/local/include/cpl_serv.h:171:5: error: ‘CE_Failure’ has a previous declaration as ‘CPLErr CE_Failure’<br>
> /usr/local/include/cpl_error.h:54:16: error: conflicting declaration ‘CE_Fatal’<br>
> /usr/local/include/cpl_serv.h:172:5: error: ‘CE_Fatal’ has a previous declaration as ‘CPLErr CE_Fatal’<br>
> /usr/local/include/cpl_error.h:55:3: error: conflicting declaration ‘typedef enum CPLErr CPLErr’<br>
> /usr/local/include/cpl_serv.h:173:3: error: ‘CPLErr’ has a previous declaration as ‘typedef enum CPLErr CPLErr’<br>
> /usr/local/include/cpl_error.h:71:71: error: declaration of C function ‘void (* gtCPLSetErrorHandler(CPLErrorHandler))(CPLErr, int, const char*)’ conflicts with<br>
> /usr/local/include/cpl_serv.h:186:14: error: previous declaration ‘void gtCPLSetErrorHandler(void (*)(CPLErr, int, const char*))’ here<br>
> In file included from /usr/local/PDAL-master/src/drivers/las/GeotiffSupport.hpp:42:0,<br>
>                  from /usr/local/PDAL-master/src/drivers/las/GeotiffSupport.cpp:35:<br>
> /usr/local/include/cpl_conv.h:63:33: error: declaration of C function ‘void* gtCPLMalloc(size_t)’ conflicts with<br>
> /usr/local/include/cpl_serv.h:147:15: error: previous declaration ‘void* gtCPLMalloc(int)’ here<br>
> /usr/local/include/cpl_conv.h:64:41: error: declaration of C function ‘void* gtCPLCalloc(size_t, size_t)’ conflicts with<br>
> /usr/local/include/cpl_serv.h:148:15: error: previous declaration ‘void* gtCPLCalloc(int, int)’ here<br>
> /usr/local/include/cpl_conv.h:65:42: error: declaration of C function ‘void* gtCPLRealloc(void*, size_t)’ conflicts with<br>
> /usr/local/include/cpl_serv.h:149:15: error: previous declaration ‘void* gtCPLRealloc(void*, int)’ here<br>
> make[2]: *** [src/CMakeFiles/pdal.dir/drivers/las/GeotiffSupport.cpp.o] Error 1<br>
> make[1]: *** [src/CMakeFiles/pdal.dir/all] Error 2<br>
> make: *** [all] Error 2<br>
> -------------------------------------------------------<br>
><br>
> So, Installed geotiff 1.4  and tried again.  Success past the geotiff library !<br>
><br>
> This time ,however ,  it had problems with the system cairo ( had to specify cairo includes manually,)<br>
><br>
> Linking CXX executable ../../bin/pshape<br>
> CMakeFiles/pshape.dir/Draw.cpp.o: In function `Draw':<br>
> /usr/local/PDAL-master/apps/pshape/Draw.cpp:37: undefined reference to `cairo_svg_surface_create'<br>
> /usr/local/PDAL-master/apps/pshape/Draw.cpp:38: undefined reference to `cairo_create'<br>
> /usr/local/PDAL-master/apps/pshape/Draw.cpp:41: undefined reference to `cairo_translate'<br>
> CMakeFiles/pshape.dir/Draw.cpp.o: In function `~Draw':<br>
> /usr/local/PDAL-master/apps/pshape/Draw.cpp:46: undefined reference to `cairo_surface_destroy'<br>
> /usr/local/PDAL-master/apps/pshape/Draw.cpp:47: undefined reference to `cairo_destroy'<br>
> CMakeFiles/pshape.dir/Draw.cpp.o: In function `Pshape::Draw::drawHexagon(Pshape::Hexagon*, bool)':<br>
> /usr/local/PDAL-master/apps/pshape/Draw.cpp:55: undefined reference to `cairo_set_line_width'<br>
> /usr/local/PDAL-master/apps/pshape/Draw.cpp:56: undefined reference to `cairo_set_source_rgb'<br>
> /usr/local/PDAL-master/apps/pshape/Draw.cpp:64: undefined reference to `cairo_move_to'<br>
> /usr/local/PDAL-master/apps/pshape/Draw.cpp:68: undefined reference to `cairo_line_to'<br>
> /usr/local/PDAL-master/apps/pshape/Draw.cpp:70: undefined reference to `cairo_close_path'<br>
> /usr/local/PDAL-master/apps/pshape/Draw.cpp:73: undefined reference to `cairo_fill'<br>
> /usr/local/PDAL-master/apps/pshape/Draw.cpp:77: undefined reference to `cairo_set_source_rgb'<br>
> /usr/local/PDAL-master/apps/pshape/Draw.cpp:78: undefined reference to `cairo_fill'<br>
> /usr/local/PDAL-master/apps/pshape/Draw.cpp:86: undefined reference to `cairo_stroke'<br>
> /usr/local/PDAL-master/apps/pshape/Draw.cpp:87: undefined reference to `cairo_surface_flush'<br>
> CMakeFiles/pshape.dir/Draw.cpp.o: In function `Pshape::Draw::drawSegment(Pshape::Segment, Pshape::Color)':<br>
> /usr/local/PDAL-master/apps/pshape/Draw.cpp:93: undefined reference to `cairo_set_line_width'<br>
> /usr/local/PDAL-master/apps/pshape/Draw.cpp:94: undefined reference to `cairo_set_source_rgb'<br>
> /usr/local/PDAL-master/apps/pshape/Draw.cpp:112: undefined reference to `cairo_move_to'<br>
> /usr/local/PDAL-master/apps/pshape/Draw.cpp:113: undefined reference to `cairo_line_to'<br>
> /usr/local/PDAL-master/apps/pshape/Draw.cpp:114: undefined reference to `cairo_stroke'<br>
> /usr/local/PDAL-master/apps/pshape/Draw.cpp:115: undefined reference to `cairo_surface_flush'<br>
> CMakeFiles/pshape.dir/Draw.cpp.o: In function `Pshape::Draw::drawPoint(Pshape::Mathpair<double>)':<br>
> /usr/local/PDAL-master/apps/pshape/Draw.cpp:122: undefined reference to `cairo_arc'<br>
> /usr/local/PDAL-master/apps/pshape/Draw.cpp:123: undefined reference to `cairo_stroke'<br>
> collect2: ld returned 1 exit status<br>
> make[2]: *** [bin/pshape] Error 1<br>
> make[1]: *** [apps/pshape/CMakeFiles/pshape.dir/all] Error 2<br>
><br>
><br>
><br>
> Do I need to update cairo beyond the system default for Ubuntu 12.04?<br>
><br>
> Doug<br>
><br>
><br>
> On Fri, Feb 15, 2013 at 10:05 AM, Howard Butler <<a href="mailto:hobu.inc@gmail.com">hobu.inc@gmail.com</a>> wrote:<br>
><br>
> On Feb 15, 2013, at 8:37 AM, Doug Newcomb <<a href="mailto:newcomb.ttg@gmail.com">newcomb.ttg@gmail.com</a>> wrote:<br>
><br>
> > Hi Folks,<br>
> > My cmake-fu is still in it's infancy ( using cmake-gui) .  I'm still getting the Cairo-dir not found when trying to configure. Using the zip file pulled down this morning with the FindCairo.cmake module embedded.<br>


> ><br>
> >  whereis cairo.h -  gives:<br>
> > cairo: /usr/include/cairo<br>
> ><br>
> > using the standard system cairo2-dev package<br>
> > cairo (1.10.2-6.1ubuntu3)<br>
><br>
> Doug,<br>
><br>
> Sorry. The Cairo CMake module I just added isn't very smart, and I can report it is breaking for me locally too.  I'll to to push a fix in the next few hours, and I'll email you when a new one is available.<br>


><br>
> Alternatively, you could remove/comment out the find_package(Cairo) line from apps/pshape/CMakeLists.txt to work around things.<br>
><br>
> Howard<br>
><br>
<br>
</div></div><div class="HOEnZb"><div class="h5">_______________________________________________<br>
pdal mailing list<br>
<a href="mailto:pdal@lists.osgeo.org">pdal@lists.osgeo.org</a><br>
<a href="http://lists.osgeo.org/mailman/listinfo/pdal" target="_blank">http://lists.osgeo.org/mailman/listinfo/pdal</a><br>
</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br><div>Doug Newcomb</div><div>USFWS</div><div>Raleigh, NC</div><div>919-856-4520 ext. 14 <a href="mailto:doug_newcomb@fws.gov" target="_blank">doug_newcomb@fws.gov</a></div>

<div>---------------------------------------------------------------------------------------------------------</div><div>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.</div>


</div></div>