Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • otb otb
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 204
    • Issues 204
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 11
    • Merge requests 11
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Container Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Main Repositories
  • otbotb
  • Issues
  • #1567
Closed
Open
Issue created Apr 24, 2018 by Bas Couwenberg@sebasticContributor

OTB 6.4.0 fails to build with GDAl 2.3.0

Description

In preparation of the GDAL 2.3.0 release and the transition that will trigger in Debian, all packages that use C++ symbols from libgdal have been rebuilt with GDAL 2.3.0-beta1.

Unfortunately OTB 6.4.0 failed to build:

In file included from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.h:225:0,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFeatureWrapper.h:34,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/src/otbOGRFieldWrapper.cxx:38:
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:318:105: error: could not convert template argument '& OGRFeature::GetFieldAsInteger' from '<unresolved overloaded function type>' to 'int (OGRFeature::*)
(int)'
   < mpl::pair<mpl::int_<OFTInteger>,     MemberGetterPtr<int,             &OGRFeature::GetFieldAsInteger> >
                                                                                                         ^
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:318:107: error: template argument 2 is invalid
   < mpl::pair<mpl::int_<OFTInteger>,     MemberGetterPtr<int,             &OGRFeature::GetFieldAsInteger> >
                                                                                                           ^
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:319:109: error: could not convert template argument '& OGRFeature::GetFieldAsIntegerList' from '<unresolved overloaded function type>' to 'const int* (OGRFeature::*)(int, int*)'
   , mpl::pair<mpl::int_<OFTIntegerList>, MemberContainerGetterPtr<int,    &OGRFeature::GetFieldAsIntegerList> >
                                                                                                             ^
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:319:111: error: template argument 2 is invalid
   , mpl::pair<mpl::int_<OFTIntegerList>, MemberContainerGetterPtr<int,    &OGRFeature::GetFieldAsIntegerList> >
                                                                                                               ^
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:320:104: error: could not convert template argument '& OGRFeature::GetFieldAsDouble' from '<unresolved overloaded function type>' to 'double (OGRFeature::*)(int)'
   , mpl::pair<mpl::int_<OFTReal>,        MemberGetterPtr<double,          &OGRFeature::GetFieldAsDouble> >
                                                                                                        ^
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:320:106: error: template argument 2 is invalid
   , mpl::pair<mpl::int_<OFTReal>,        MemberGetterPtr<double,          &OGRFeature::GetFieldAsDouble> >
                                                                                                          ^
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:321:108: error: could not convert template argument '& OGRFeature::GetFieldAsDoubleList' from '<unresolved overloaded function type>' to 'const double* (OGRFeature::*)(int, int*)'
   , mpl::pair<mpl::int_<OFTRealList>,    MemberContainerGetterPtr<double, &OGRFeature::GetFieldAsDoubleList> >
                                                                                                            ^
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:321:110: error: template argument 2 is invalid
   , mpl::pair<mpl::int_<OFTRealList>,    MemberContainerGetterPtr<double, &OGRFeature::GetFieldAsDoubleList> >
                                                                                                              ^
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:322:117: error: could not convert template argument '& OGRFeature::GetFieldAsString' from '<unresolved overloaded function type>' to 'const char* (OGRFeature::*)(int)'
   , mpl::pair<mpl::int_<OFTString>,      MemberGetterPtr<char const*,     &OGRFeature::GetFieldAsString, std::string> >
                                                                                                                     ^
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:322:119: error: template argument 2 is invalid
   , mpl::pair<mpl::int_<OFTString>,      MemberGetterPtr<char const*,     &OGRFeature::GetFieldAsString, std::string> >
                                                                                                                       ^
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:325:97: error: could not convert template argument '& OGRFeature::GetFieldAsInteger64' from '<unresolved overloaded function type>' to 'long long int (OGRFeature::*)(int)'
   , mpl::pair<mpl::int_<OFTInteger64>, MemberGetterPtr<GIntBig, &OGRFeature::GetFieldAsInteger64> >
                                                                                                 ^
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:325:99: error: template argument 2 is invalid
   , mpl::pair<mpl::int_<OFTInteger64>, MemberGetterPtr<GIntBig, &OGRFeature::GetFieldAsInteger64> >
                                                                                                   ^
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:326:114: error: could not convert template argument '& OGRFeature::GetFieldAsInteger64List' from '<unresolved overloaded function type>' to 'const long long int* (OGRFeature::*)(int, int*)'
   , mpl::pair<mpl::int_<OFTInteger64List>, MemberContainerGetterPtr<GIntBig, &OGRFeature::GetFieldAsInteger64List> >
                                                                                                                  ^
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:326:116: error: template argument 2 is invalid
   , mpl::pair<mpl::int_<OFTInteger64List>, MemberContainerGetterPtr<GIntBig, &OGRFeature::GetFieldAsInteger64List> >
                                                                                                                    ^
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:328:3: error: template argument 1 is invalid
   > FieldGetters_Map;
   ^
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:328:3: error: template argument 2 is invalid
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:328:3: error: template argument 3 is invalid
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:328:3: error: template argument 4 is invalid
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:328:3: error: template argument 5 is invalid
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:328:3: error: template argument 7 is invalid
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:328:3: error: template argument 8 is invalid
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:338:96: error: could not convert template argument '& OGRFeature::SetField' from '<unresolved overloaded function type>' to 'void (OGRFeature::*)(int, int, int*)'
   , mpl::pair<mpl::int_<OFTIntegerList>, MemberContainerSetterPtr<int,    &OGRFeature::SetField> >
                                                                                                ^
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:338:98: error: template argument 2 is invalid
   , mpl::pair<mpl::int_<OFTIntegerList>, MemberContainerSetterPtr<int,    &OGRFeature::SetField> >
                                                                                                  ^
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:340:96: error: could not convert template argument '& OGRFeature::SetField' from '<unresolved overloaded function type>' to 'void (OGRFeature::*)(int, int, double*)'
   , mpl::pair<mpl::int_<OFTRealList>,    MemberContainerSetterPtr<double, &OGRFeature::SetField> >
                                                                                                ^
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:340:98: error: template argument 2 is invalid
   , mpl::pair<mpl::int_<OFTRealList>,    MemberContainerSetterPtr<double, &OGRFeature::SetField> >
                                                                                                  ^
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:347:3: error: template argument 2 is invalid
   > FieldSetters_Map;
   ^
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:347:3: error: template argument 4 is invalid
In file included from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:40:0,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.h:225,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFeatureWrapper.h:34,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/src/otbOGRFieldWrapper.cxx:38:
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/src/otbOGRFieldWrapper.cxx:48:62: error: could not convert template argument '& OGRFeature::GetFieldAsInteger' from '<unresolved overloaded function type>' to 'int (OGRFeature::*)(int)'
   MemberGetterPtr<int,         &OGRFeature::GetFieldAsInteger>,
                                                              ^
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/src/otbOGRFieldWrapper.cxx:49:61: error: could not convert template argument '& OGRFeature::GetFieldAsDouble' from '<unresolved overloaded function type>' to 'double (OGRFeature::*)(int)'
   MemberGetterPtr<double,      &OGRFeature::GetFieldAsDouble>
                                                             ^
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/src/otbOGRFieldWrapper.cxx:50:3: error: template argument 1 is invalid
   >::value
   ^
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/src/otbOGRFieldWrapper.cxx:50:3: error: template argument 2 is invalid
In file included from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:36:0,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.h:225,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFeatureWrapper.h:34,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/src/otbOGRFieldWrapper.cxx:38:
/usr/include/boost/mpl/at.hpp: In instantiation of 'struct boost::mpl::at<int, mpl_::int_<0> >':
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:428:75:   required from 'T otb::ogr::Field::GetValue() const [with T = int]'
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/src/otbOGRFieldWrapper.cxx:143:31:   required from here
/usr/include/boost/mpl/at.hpp:31:8: error: no class template named 'apply' in 'struct boost::mpl::at_impl<boost::mpl::non_sequence_tag>'
 struct at
        ^~
In file included from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.h:225:0,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFeatureWrapper.h:34,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/src/otbOGRFieldWrapper.cxx:38:
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx: In instantiation of 'T otb::ogr::Field::GetValue() const [with T = int]':
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/src/otbOGRFieldWrapper.cxx:143:31:   required from here
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:428:75: error: no type named 'type' in 'struct boost::mpl::at<int, mpl_::int_<0> >'
   typedef typename boost::mpl::at<internal::FieldGetters_Map, Kind>::type GetterType;
                                                                           ^~~~~~~~~~
In file included from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:40:0,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.h:225,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFeatureWrapper.h:34,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/src/otbOGRFieldWrapper.cxx:38:
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:431:25: error: no type named 'type' in 'struct boost::mpl::at<int, mpl_::int_<0> >'
   BOOST_STATIC_ASSERT(!(boost::is_same<GetterType, boost::mpl::void_>::value));
                        ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:36:0,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.h:225,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFeatureWrapper.h:34,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/src/otbOGRFieldWrapper.cxx:38:
/usr/include/boost/mpl/at.hpp: In instantiation of 'struct boost::mpl::at<int, mpl_::int_<1> >':
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:428:75:   required from 'T otb::ogr::Field::GetValue() const [with T = std::vector<int>]'
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/src/otbOGRFieldWrapper.cxx:147:53:   required from here
/usr/include/boost/mpl/at.hpp:31:8: error: no class template named 'apply' in 'struct boost::mpl::at_impl<boost::mpl::non_sequence_tag>'
 struct at
        ^~
In file included from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.h:225:0,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFeatureWrapper.h:34,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/src/otbOGRFieldWrapper.cxx:38:
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx: In instantiation of 'T otb::ogr::Field::GetValue() const [with T = std::vector<int>]':
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/src/otbOGRFieldWrapper.cxx:147:53:   required from here
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:428:75: error: no type named 'type' in 'struct boost::mpl::at<int, mpl_::int_<1> >'
   typedef typename boost::mpl::at<internal::FieldGetters_Map, Kind>::type GetterType;
                                                                           ^~~~~~~~~~
In file included from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:40:0,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.h:225,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFeatureWrapper.h:34,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/src/otbOGRFieldWrapper.cxx:38:
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:431:25: error: no type named 'type' in 'struct boost::mpl::at<int, mpl_::int_<1> >'
   BOOST_STATIC_ASSERT(!(boost::is_same<GetterType, boost::mpl::void_>::value));
                        ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:36:0,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.h:225,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFeatureWrapper.h:34,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/src/otbOGRFieldWrapper.cxx:38:
/usr/include/boost/mpl/at.hpp: In instantiation of 'struct boost::mpl::at<int, mpl_::int_<2> >':
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:428:75:   required from 'T otb::ogr::Field::GetValue() const [with T = double]'
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/src/otbOGRFieldWrapper.cxx:150:34:   required from here
/usr/include/boost/mpl/at.hpp:31:8: error: no class template named 'apply' in 'struct boost::mpl::at_impl<boost::mpl::non_sequence_tag>'
 struct at
        ^~
In file included from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.h:225:0,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFeatureWrapper.h:34,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/src/otbOGRFieldWrapper.cxx:38:
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx: In instantiation of 'T otb::ogr::Field::GetValue() const [with T = double]':
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/src/otbOGRFieldWrapper.cxx:150:34:   required from here
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:428:75: error: no type named 'type' in 'struct boost::mpl::at<int, mpl_::int_<2> >'
   typedef typename boost::mpl::at<internal::FieldGetters_Map, Kind>::type GetterType;
                                                                           ^~~~~~~~~~
In file included from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:40:0,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.h:225,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFeatureWrapper.h:34,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/src/otbOGRFieldWrapper.cxx:38:
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:431:25: error: no type named 'type' in 'struct boost::mpl::at<int, mpl_::int_<2> >'
   BOOST_STATIC_ASSERT(!(boost::is_same<GetterType, boost::mpl::void_>::value));
                        ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:36:0,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.h:225,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFeatureWrapper.h:34,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/src/otbOGRFieldWrapper.cxx:38:
/usr/include/boost/mpl/at.hpp: In instantiation of 'struct boost::mpl::at<int, mpl_::int_<3> >':
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:428:75:   required from 'T otb::ogr::Field::GetValue() const [with T = std::vector<double>]'
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/src/otbOGRFieldWrapper.cxx:154:56:   required from here
/usr/include/boost/mpl/at.hpp:31:8: error: no class template named 'apply' in 'struct boost::mpl::at_impl<boost::mpl::non_sequence_tag>'
 struct at
        ^~
In file included from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.h:225:0,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFeatureWrapper.h:34,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/src/otbOGRFieldWrapper.cxx:38:
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx: In instantiation of 'T otb::ogr::Field::GetValue() const [with T = std::vector<double>]':
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/src/otbOGRFieldWrapper.cxx:154:56:   required from here
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:428:75: error: no type named 'type' in 'struct boost::mpl::at<int, mpl_::int_<3> >'
   typedef typename boost::mpl::at<internal::FieldGetters_Map, Kind>::type GetterType;
                                                                           ^~~~~~~~~~
In file included from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:40:0,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.h:225,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFeatureWrapper.h:34,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/src/otbOGRFieldWrapper.cxx:38:
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:431:25: error: no type named 'type' in 'struct boost::mpl::at<int, mpl_::int_<3> >'
   BOOST_STATIC_ASSERT(!(boost::is_same<GetterType, boost::mpl::void_>::value));
                        ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:36:0,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.h:225,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFeatureWrapper.h:34,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/src/otbOGRFieldWrapper.cxx:38:
/usr/include/boost/mpl/at.hpp: In instantiation of 'struct boost::mpl::at<int, mpl_::int_<4> >':
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:428:75:   required from 'T otb::ogr::Field::GetValue() const [with T = std::__cxx11::basic_string<char>]'
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/src/otbOGRFieldWrapper.cxx:157:39:   required from here
/usr/include/boost/mpl/at.hpp:31:8: error: no class template named 'apply' in 'struct boost::mpl::at_impl<boost::mpl::non_sequence_tag>'
 struct at
        ^~
In file included from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.h:225:0,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFeatureWrapper.h:34,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/src/otbOGRFieldWrapper.cxx:38:
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx: In instantiation of 'T otb::ogr::Field::GetValue() const [with T = std::__cxx11::basic_string<char>]':
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/src/otbOGRFieldWrapper.cxx:157:39:   required from here
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:428:75: error: no type named 'type' in 'struct boost::mpl::at<int, mpl_::int_<4> >'
   typedef typename boost::mpl::at<internal::FieldGetters_Map, Kind>::type GetterType;
                                                                           ^~~~~~~~~~
In file included from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:40:0,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.h:225,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFeatureWrapper.h:34,
                 from /build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/src/otbOGRFieldWrapper.cxx:38:
/build/otb-6.4.0+dfsg/Modules/Adapters/GdalAdapters/include/otbOGRFieldWrapper.txx:431:25: error: no type named 'type' in 'struct boost::mpl::at<int, mpl_::int_<4> >'
   BOOST_STATIC_ASSERT(!(boost::is_same<GetterType, boost::mpl::void_>::value));
                        ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make[3]: *** [Modules/Adapters/GdalAdapters/src/CMakeFiles/OTBGdalAdapters.dir/build.make:66: Modules/Adapters/GdalAdapters/src/CMakeFiles/OTBGdalAdapters.dir/otbOGRFieldWrapper.cxx.o] Error 1

The full buildlog is attached: otb_6.4.0+dfsg-2_amd64.build

Steps to reproduce

Rebuild the otb (6.4.0+dfsg-1) package from Debian unstable with gdal (2.3.0beta1+dfsg-2exp1) from Debian experimental.

Or build from source and ensure to include the gdal_csv.h fix:

https://github.com/OSGeo/gdal/commit/ae9da1ad7e51cfd4ec714b07cc1296d99964d27b

Configuration information

Debian unstable (amd64), otb (6.4.0+dfsg-2) from git (https://salsa.debian.org/debian-gis-team/otb)

Assignee
Assign to
Time tracking