Details
-
Type:
Story
-
Status: Invalid
-
Resolution: Done
-
Fix Version/s: None
-
Component/s: afw
-
Labels:
-
Epic Link:
-
Sprint:AP F20-6 (November)
-
Team:Alert Production
-
Urgent?:No
Description
I'm unable to get afw compiling with pybind11 2.5 working, with an error which seems to be related to types.
/lsstsw/miniconda/envs/lsst-scipipe-u-bvan-boost174_pybind11_update.4076abc/bin/x86_64-conda-linux-gnu-c++ -o python/lsst/afw/math/leastSquares.os -c -std=c++14 -g -DLSST_LITTLE_ENDIAN=1 -O3 -Wall -Wno-unknown-pragmas -Wno-unused-local-typedefs -fno-lto -fvisibility=hidden -fPIC -Iinclude -I/lsstsw/stack/4076abc/Linux64/astshim/20.0.0+f45b7d88f4/include -I/lsstsw/stack/4076abc/Linux64/pex_config/20.0.0-1-g2b7511a+f48bb53858/include -I/lsstsw/stack/4076abc/Linux64/geom/20.0.0-2-gec03fae+de92faa26f/include -I/lsstsw/stack/4076abc/Linux64/sphgeom/20.0.0-4-gfea843c+f45b7d88f4/include -I/lsstsw/stack/4076abc/Linux64/daf_persistence/20.0.0+dbd2281351/include -I/lsstsw/stack/4076abc/Linux64/pex_policy/20.0.0+f48bb53858/include -I/lsstsw/stack/4076abc/Linux64/log/20.0.0-1-gd1c87d7+add1f556b4/include -I/lsstsw/stack/4076abc/Linux64/daf_base/20.0.0-2-g7818986+add1f556b4/include -I/lsstsw/stack/4076abc/Linux64/utils/20.0.0-2-gb095acb+63636aeed8/include -I/lsstsw/stack/4076abc/Linux64/pex_exceptions/20.0.0+e2e26847c2/include -I/lsstsw/stack/4076abc/Linux64/base/20.0.0-5-g357b56b+f45b7d88f4/include -isystem /lsstsw/miniconda/envs/lsst-scipipe-u-bvan-boost174_pybind11_update.4076abc/include -isystem /lsstsw/miniconda/envs/lsst-scipipe-u-bvan-boost174_pybind11_update.4076abc/include/python3.8 -isystem /lsstsw/miniconda/envs/lsst-scipipe-u-bvan-boost174_pybind11_update.4076abc/lib/python3.8/site-packages/numpy/core/include -isystem /lsstsw/miniconda/envs/lsst-scipipe-u-bvan-boost174_pybind11_update.4076abc/include/eigen3 -isystem /lsstsw/miniconda/envs/lsst-scipipe-u-bvan-boost174_pybind11_update.4076abc/include/Minuit2 python/lsst/afw/math/leastSquares.cc
|
In file included from include/lsst/afw/image/MaskedImage.h:63:0,
|
from python/lsst/afw/image/pixel/pixel.cc:28:
|
include/lsst/afw/image/Pixel.h: In instantiation of 'struct lsst::afw::image::pixel::exprTraits<pybind11::detail::descr<29> >':
|
include/lsst/afw/image/Pixel.h:535:1: required by substitution of 'template<class ExprT1, class ExprT2> lsst::afw::image::pixel::BinaryExpr<ExprT1, ExprT2, std::plus<typename lsst::afw::image::pixel::exprTraits< <template-parameter-1-1> >::ImagePixelT>, lsst::afw::image::pixel::bitwise_or<typename lsst::afw::image::pixel::exprTraits< <template-parameter-1-1> >::MaskPixelT>, lsst::afw::image::pixel::variance_plus<typename lsst::afw::image::pixel::exprTraits< <template-parameter-1-1> >::VariancePixelT> > lsst::afw::image::pixel::operator+(ExprT1, ExprT2) [with ExprT1 = pybind11::detail::descr<29>; ExprT2 = pybind11::detail::descr<1, lsst::afw::image::pixel::SinglePixel<float, int, float> >]'
|
/lsstsw/miniconda/envs/lsst-scipipe-u-bvan-boost174_pybind11_update.4076abc/include/pybind11/pybind11.h:172:84: required from 'void pybind11::cpp_function::initialize(Func&&, Return (*)(Args ...), const Extra& ...) [with Func = lsst::afw::image::pixel::SinglePixel<float, int, float> (*&)(float, int, float); Return = lsst::afw::image::pixel::SinglePixel<float, int, float>; Args = {float, int, float}; Extra = {pybind11::name, pybind11::scope, pybind11::sibling, pybind11::arg, pybind11::arg, pybind11::arg}]'
|
/lsstsw/miniconda/envs/lsst-scipipe-u-bvan-boost174_pybind11_update.4076abc/include/pybind11/pybind11.h:64:9: required from 'pybind11::cpp_function::cpp_function(Return (*)(Args ...), const Extra& ...) [with Return = lsst::afw::image::pixel::SinglePixel<float, int, float>; Args = {float, int, float}; Extra = {pybind11::name, pybind11::scope, pybind11::sibling, pybind11::arg, pybind11::arg, pybind11::arg}]'
|
/lsstsw/miniconda/envs/lsst-scipipe-u-bvan-boost174_pybind11_update.4076abc/include/pybind11/pybind11.h:819:22: required from 'pybind11::module& pybind11::module::def(const char*, Func&&, const Extra& ...) [with Func = lsst::afw::image::pixel::SinglePixel<float, int, float> (*)(float, int, float); Extra = {pybind11::arg, pybind11::arg, pybind11::arg}]'
|
python/lsst/afw/image/pixel/pixel.cc:52:5: required from 'void lsst::afw::image::pixel::{anonymous}::declareSinglePixel(pybind11::module&, const string&) [with PixelT = float; std::__cxx11::string = std::__cxx11::basic_string<char>]'
|
python/lsst/afw/image/pixel/pixel.cc:62:50: required from here
|
include/lsst/afw/image/Pixel.h:295:41: error: no type named 'ImagePixelT' in 'struct pybind11::detail::descr<29>'
|
typedef typename ExprT::ImagePixelT ImagePixelT;
|
^~~~~~~~~~~
|
include/lsst/afw/image/Pixel.h:296:40: error: no type named 'MaskPixelT' in 'struct pybind11::detail::descr<29>'
|
typedef typename ExprT::MaskPixelT MaskPixelT;
|
^~~~~~~~~~
|
include/lsst/afw/image/Pixel.h:297:44: error: no type named 'VariancePixelT' in 'struct pybind11::detail::descr<29>'
|
typedef typename ExprT::VariancePixelT VariancePixelT;
|
^~~~~~~~~~~~~~
|
include/lsst/afw/image/Pixel.h: In instantiation of 'struct lsst::afw::image::pixel::exprTraits<pybind11::detail::descr<27> >':
|
include/lsst/afw/image/Pixel.h:535:1: required by substitution of 'template<class ExprT1, class ExprT2> lsst::afw::image::pixel::BinaryExpr<ExprT1, ExprT2, std::plus<typename lsst::afw::image::pixel::exprTraits< <template-parameter-1-1> >::ImagePixelT>, lsst::afw::image::pixel::bitwise_or<typename lsst::afw::image::pixel::exprTraits< <template-parameter-1-1> >::MaskPixelT>, lsst::afw::image::pixel::variance_plus<typename lsst::afw::image::pixel::exprTraits< <template-parameter-1-1> >::VariancePixelT> > lsst::afw::image::pixel::operator+(ExprT1, ExprT2) [with ExprT1 = pybind11::detail::descr<27>; ExprT2 = pybind11::detail::descr<1, lsst::afw::image::pixel::SinglePixel<int, int, float> >]'
|
/lsstsw/miniconda/envs/lsst-scipipe-u-bvan-boost174_pybind11_update.4076abc/include/pybind11/pybind11.h:172:84: required from 'void pybind11::cpp_function::initialize(Func&&, Return (*)(Args ...), const Extra& ...) [with Func = lsst::afw::image::pixel::SinglePixel<int, int, float> (*&)(int, int, float); Return = lsst::afw::image::pixel::SinglePixel<int, int, float>; Args = {int, int, float}; Extra = {pybind11::name, pybind11::scope, pybind11::sibling, pybind11::arg, pybind11::arg, pybind11::arg}]'
|
/lsstsw/miniconda/envs/lsst-scipipe-u-bvan-boost174_pybind11_update.4076abc/include/pybind11/pybind11.h:64:9: required from 'pybind11::cpp_function::cpp_function(Return (*)(Args ...), const Extra& ...) [with Return = lsst::afw::image::pixel::SinglePixel<int, int, float>; Args = {int, int, float}; Extra = {pybind11::name, pybind11::scope, pybind11::sibling, pybind11::arg, pybind11::arg, pybind11::arg}]'
|
/lsstsw/miniconda/envs/lsst-scipipe-u-bvan-boost174_pybind11_update.4076abc/include/pybind11/pybind11.h:819:22: required from 'pybind11::module& pybind11::module::def(const char*, Func&&, const Extra& ...) [with Func = lsst::afw::image::pixel::SinglePixel<int, int, float> (*)(int, int, float); Extra = {pybind11::arg, pybind11::arg, pybind11::arg}]'
|
python/lsst/afw/image/pixel/pixel.cc:52:5: required from 'void lsst::afw::image::pixel::{anonymous}::declareSinglePixel(pybind11::module&, const string&) [with PixelT = int; std::__cxx11::string = std::__cxx11::basic_string<char>]'
|
python/lsst/afw/image/pixel/pixel.cc:64:48: required from here
|
include/lsst/afw/image/Pixel.h:295:41: error: no type named 'ImagePixelT' in 'struct pybind11::detail::descr<27>'
|
typedef typename ExprT::ImagePixelT ImagePixelT;
|
^~~~~~~~~~~
|
include/lsst/afw/image/Pixel.h:296:40: error: no type named 'MaskPixelT' in 'struct pybind11::detail::descr<27>'
|
typedef typename ExprT::MaskPixelT MaskPixelT;
|
^~~~~~~~~~
|
include/lsst/afw/image/Pixel.h:297:44: error: no type named 'VariancePixelT' in 'struct pybind11::detail::descr<27>'
|
typedef typename ExprT::VariancePixelT VariancePixelT;
|
^~~~~~~~~~~~~~
|
scons: *** [python/lsst/afw/image/pixel/pixel.os] Error 1
|
This problem has already been fixed on
DM-27064. Sorry we didn't get this closed earlier or otherwise let you know, Kenneth Herner, and I hope any time you spent on it was at least educational.