[gdal-dev] C++11 timeline

Damian Dixon damian.dixon at gmail.com
Fri Jan 13 02:01:37 PST 2017


Hi,

We are actively using GDAL on WIndows, Linux and Android to deal with GIS
data reading gaps.

Currently we are constrained to using 'gcc 4.7' on Linux, which gives us a
lot of C++11 that we currently want to use.

On Windows we have switched to Visual Studio 2015.

On Android we will probably use the latest.

One of the reasons we tend to lag on compilers is due to needing to support
customers on older Operating Systems as well as the usual reluctance to
upgrade a compiler because of knock-on to system test costs.

That's not to say don't use new features of C++ or the library, just bear
in mind the potential knock on.

One of the ways we have dealt with this potential knock-on is to use boost
to provide many of the missing library features we are using.

We switch based on cmake tests between boost and the supplied libraries.

We have found the following very helpful from C++11 (and older):

   - shared_ptr
   - unique_ptr
   - nullptr
   - unordered_map
   - std::thread
   - std::nothrow for memory allocation

shared_ptr and unique_ptr make the management of allocated memory so much
less error prone, so the use internally, even if the API is not changed,
would be a bonus.

To be honest, if needed, we will just update the compilers we use to the
minimum required.

Regards
Damian



On 13 January 2017 at 01:55, Greg Troxel <gdt at lexort.com> wrote:

>
> Kurt Schwehr <schwehr at gmail.com> writes:
>
> > Thanks Gred and Andrew!  Those are exactly the kind of comments that
> help.
> >
> > Greg,
> >
> > I have lots of experience packaging GDAL in fink for the mac, but less
> > elsewhere.  I found this like which implies that pkgsrc is at GDAL
> 1.11.3.
> > Are there better links?
>
> Yes, it's behind, for no good reason.  I need to update it.  I might
> have tried and found it non-trivial, but I don't remember clearly.
>
> > - http://pkgsrc.se/geography/gdal-lib
>
> That's a good link. Canonical http pointer at:
>    http://cvsweb.netbsd.org/bsdweb.cgi/pkgsrc/geography/gdal-lib/
>
> Also, this shows build status on a lot of platforms (but a small
> fraction of the set pkgsrc is intended to work on):
>
>   https://bulktracker.appspot.com/pkgresults/geography/gdal-lib
>
> > - https://github.com/joyent/pkgsrc/blob/trunk/geography/
> gdal-lib/Makefile
>
> That's a soft fork, intending to have a few diffs but not much.  The
> vast majority of things are the same, especially normal packages like
> gdal-lib.
>
>
>
>
> _______________________________________________
> gdal-dev mailing list
> gdal-dev at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/gdal-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/gdal-dev/attachments/20170113/4a1aff74/attachment.html>


More information about the gdal-dev mailing list