Re: [eigen] Fwd: problem with compile on AIX system

[ Thread Index | Date Index | More lists.tuxfamily.org/eigen Archives ]


Thanks for your quick responce!

But It didn't help..
Still have problem:
"/home/artem/opt/Eigen/src/Core/Block.h", line 221..9: 1540-0062 (S) The incomplete class "ei_traits<Eigen::Block>" must not be used as a qualifier.
"/home/artem/opt/Eigen/src/Core/CwiseUnaryOp.h", line 60.22: 1540-0198 (W) The omitted keyword "private" is assumed for base class "ei_no_assignment_operator".
"/home/artem/opt/Eigen/src/Core/CwiseUnaryOp.h", line 60.22: 1540-0198 (W) The omitted keyword "private" is assumed for base class "ei_no_assignment_operator".
"/home/artem/opt/Eigen/src/Core/CwiseBinaryOp.h", line 80.23: 1540-0198 (W) The omitted keyword "private" is assumed for base class "ei_no_assignment_operator".
"/home/artem/opt/Eigen/src/Core/CwiseBinaryOp.h", line 80.23: 1540-0198 (W) The omitted keyword "private" is assumed for base class "ei_no_assignment_operator".


I replaced as you suggested:

    // #220 _EIGEN_GENERIC_PUBLIC_INTERFACE(Block, MapBase<Block>)
    typedef Block<MatrixType, BlockRows, BlockCols, PacketAccess, HasDirectAccess> ThisBlockType;
    _EIGEN_GENERIC_PUBLIC_INTERFACE(ThisBlockType, MapBase<ThisBlockType>)

    class InnerIterator;
    typedef typename ei_traits<Block>::AlignedDerivedType AlignedDerivedType;

    EIGEN_INHERIT_ASSIGNMENT_OPERATORS(Block)





2009/3/30 Benoit Jacob <jacob.benoit.1@xxxxxxxxx>
OK, for #8 please try the following:

at line 220 in Eigen/src/Core/Block.h, you have:

   _EIGEN_GENERIC_PUBLIC_INTERFACE(Block, MapBase<Block>)

replace that line by:

   typedef Block<MatrixType,BlockRows,BlockCols,
                   PacketAccess,HasDirectAccess> ThisBlockType;
   _EIGEN_GENERIC_PUBLIC_INTERFACE
       (ThisBlockType, MapBase<ThisBlockType>)

Cheers,
Benoit

2009/3/29 Artem Gubanov <artem.gubanov@xxxxxxxxx>:
>
>
> ---------- Forwarded message ----------
> From: Artem Gubanov <artem.gubanov@xxxxxxxxx>
> Date: 2009/3/29
> Subject: problem with compile on AIX system
> To: eigen-request@xxxxxxxxxxxxxxxxxxx
>
>
> Eigen:
>
> I tried to compile my program on AIX system (xlc++_r compiler, version 8).
> I got some errors and some of them I fixed (err 1-7), I'll really appreciate
> if you fix it in Eigen 2.1 :)
> But I have a problem with #8 (very likely I'm beginner in c++).
> Hope you'll help me.
>
> Thanks!
>
> (1)
> /opt/Eigen/src/Core/MathFunctions.h", line 74.23: 1540-0291 (S) The template
> argument for "T" cannot be found.
> template<> inline int ei_random()
> template<> inline int ei_random<int>()
>
> (2)
> /opt/Eigen/src/Core/MathFunctions.h", line 119.25: 1540-0291 (S) The
> template argument for "T" cannot be found.
> template<> inline float ei_random()
> template<> inline float ei_random<float>()
>
> (3)
> /opt/Eigen/src/Core/MathFunctions.h", line 164.26: 1540-0291 (S) The
> template argument for "T" cannot be found.
> template<> inline double ei_random<double>()
>
> (4)
> /opt/Eigen/src/Core/MathFunctions.h", line 195.39: 1540-0291 (S) The
> template argument for "T" cannot be found.
> template<> inline std::complex<float> ei_random()
> template<> inline std::complex<float> ei_random< std::complex<float> >()
>
> (5)
> /opt/Eigen/src/Core/MathFunctions.h", line 228.40: 1540-0291 (S) The
> template argument for "T" cannot be found.
> template<> inline std::complex<double> ei_random()
> template<> inline std::complex<double> ei_random< std::complex<double> >()
>
> (6)
> /opt/Eigen/src/Core/MathFunctions.h", line 269.31: 1540-0291 (S) The
> template argument for "T" cannot be found.
> template<> inline long double ei_random()
> template<> inline long double ei_random<long double>()
>
> (7)
> /opt/Eigen/src/Core/CacheFriendlyProduct.h", line 36.13: 1540-0400 (S)
> "template <class Scalar> Eigen::ei_cache_friendly_product(int, int, int,
> bool, const Scalar *, int, bool, const Scalar *, int, bool, Scalar *, int)"
> has a conflicting declaration.
> static void ei_cache_friendly_product(...
> void ei_cache_friendly_product(...
>
> (8)
> /opt/Eigen/src/Core/Block.h", line 220.5: 1540-0062 (S) The incomplete class
> "ei_traits<Eigen::Block>" must not be used as a qualifier.
> ???
>
>
>
> --
> Regards,
> Artem
>
>
>
> --
> Regards,
> Artem
>





--
Regards,
Artem


Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/