mapbox / mapnik-vector-tile

Mapnik implemention of Mapbox Vector Tile specification
BSD 3-Clause "New" or "Revised" License
553 stars 117 forks source link

Compile in C++11 mode #79

Closed tomhughes closed 9 years ago

tomhughes commented 9 years ago

Set the compiler to C++11 mode as the tests use C++11 features and gcc 5 refuses to compile the code in it's default mode (C++98 mode).

ljbade commented 9 years ago

Ah, @springmeyer this might be why I was having trouble with std::begin and std::end

springmeyer commented 9 years ago

@tomhughes: std=c++11 is expected to be provided by mapnik-config --cflags. Can you share the output of mapnik-config --cflags for you and if you have any knowledge of whether mapnik-config has been customized in packaging so it differs from a normal mapnik build?

tomhughes commented 9 years ago

The output is:

-I/usr/include -I/usr/include/polyclipping -I/usr/include/agg2 -I/usr/include -I/usr/include/freetype2 -I/usr/include/libxml2 -I/usr/include/gdal -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/libpng16 -I/usr/include/libdrm -DHAVE_JPEG -DMAPNIK_USE_PROJ4 -DHAVE_PNG -DHAVE_TIFF -DBIGINT -DBOOST_REGEX_HAS_ICU -DLINUX -DMAPNIK_THREADSAFE -DBOOST_SPIRIT_USE_PHOENIX_V3=1 -DNDEBUG -DHAVE_CAIRO -DHAVE_LIBXML2 -ansi -Wall -pthread -ftemplate-depth-300 -O3 -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -fno-strict-aliasing -finline-functions -Wno-inline -Wno-parentheses -Wno-char-subscripts

Note that this is a snapshot from the mapnik 2.2.x branch which may make a difference?

springmeyer commented 9 years ago

Note that this is a snapshot from the mapnik 2.2.x branch which may make a difference?

ooooooh, right. Mapnik v2.2.x will not be using c++11 (and may not actually support it). So I think your solution is good. The alternative (avoiding c++11 features) would be more work.

springmeyer commented 9 years ago

Nevermind, reverted since this breaks travis (which tests with non-c++11 capable compiler).