[
https://issues.apache.org/jira/browse/MADLIB-1000?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15300897#comment-15300897
]
Frank McQuillan edited comment on MADLIB-1000 at 5/25/16 9:36 PM:
------------------------------------------------------------------
Thanks for the question and the stack trace.
I am afraid I have an incomplete answer to your question, since I do not have a
specific direction to offer with respect to the Intel C++ compiler 16.0.3
(latest version). We have not tried this compiler ourselves.
Here are the recommended compilers that we have been using:
* gcc
* Clang for OSX (OK for source code but will not compile docs)
These are the platforms and OS that we have tested MADlib on:
https://cwiki.apache.org/confluence/display/MADLIB/FAQ#FAQ-Q1-2WhatplatformsdoesMADlibsupport?
We have not tried CentOS 7 however we have no reason to believe that it will
not work. So just to confirm: gcc worked OK on CentOS 7? (just to remove the
OS question from the equation)
Does anything in the community have any suggestions on this?
Frank
was (Author: fmcquillan):
Thanks for the question and the stack trace.
I am afraid I have an incomplete answer to your question, since I do not have a
specific direction to offer with respect to the Intel C++ compiler 16.0.3
(latest version). We have not tried this compiler ourselves.
Here are the recommended compilers that we have been using:
* gcc
* Clang for OSX (OK for source code but will not compile docs)
These are the platforms and OS that we have tested MADlib on:
https://cwiki.apache.org/confluence/display/MADLIB/FAQ#FAQ-Q1-2WhatplatformsdoesMADlibsupport?
We have not tried CentOS 7 however we have no reason to believe that it will
not work. So just to confirm: gcc worked OK on CentOS 7?
Does anything in the community have any suggestions on this?
Frank
> Template error when compiling with Intel C++ 16.0.3
> ---------------------------------------------------
>
> Key: MADLIB-1000
> URL: https://issues.apache.org/jira/browse/MADLIB-1000
> Project: Apache MADlib
> Issue Type: Bug
> Components: Module: Regularized Regression
> Affects Versions: v1.9
> Reporter: Ward
>
> I've tried to compile MADlib 1.9 with PostgreSQL 9.4.7 using the Intel C++
> compiler 16.0.3 (latest version) on CentOS 7. It however fails with a
> template error:
> {code}
> [ 87%] Building CXX object
> src/ports/postgres/9.4/CMakeFiles/madlib_postgresql_9_4.dir/__/__/__/modules/regress/linear.cpp.o
> cd
> /dev/shm/ward/MADlib/1.9/intel-2016.03-GCC-5.3-Python-2.7.11/easybuild_obj/src/ports/postgres/9.4
> &&
> /user/scratch/gent/vsc403/vsc40307/EB/swalot/software/icc/2016.3.210-GCC-5.3.0-2.26/compilers_and_libraries_2016.3.210/linux/bin/intel
> 64/icpc -Dmadlib_postgresql_9_4_EXPORTS
> -I/dev/shm/ward/MADlib/1.9/intel-2016.03-GCC-5.3-Python-2.7.11/easybuild_obj/src/patch
> -isystem
> /dev/shm/ward/MADlib/1.9/intel-2016.03-GCC-5.3-Python-2.7.11/easybuild_obj/third_party/src/EP_eigen
>
> -I/dev/shm/ward/MADlib/1.9/intel-2016.03-GCC-5.3-Python-2.7.11/incubator-madlib-master/src
>
> -I/dev/shm/ward/MADlib/1.9/intel-2016.03-GCC-5.3-Python-2.7.11/incubator-madlib-master/src/ports/postgres
> -isystem /dev/shm/ward/install/software/P
> ostgreSQL/9.4.7-intel-2016.03-GCC-5.3-Python-2.7.11/include/postgresql/server
> -Wall -O0 -O2 -g -DNDEBUG -fPIC -o
> CMakeFiles/madlib_postgresql_9_4.dir/__/__/__/modules/regress/linear.cpp.o -c
> /dev/shm/ward/MADlib/1.9/intel-2016.03-GCC-5
> .3-Python-2.7.11/incubator-madlib-master/src/modules/regress/linear.cpp
> compilation aborted for
> /dev/shm/ward/MADlib/1.9/intel-2016.03-GCC-5.3-Python-2.7.11/incubator-madlib-master/src/modules/sample/weighted_sample.cpp
> (code 2)
> make[2]: ***
> [src/ports/postgres/9.4/CMakeFiles/madlib_postgresql_9_4.dir/__/__/__/modules/sample/weighted_sample.cpp.o]
> Error 2
> make[2]: *** Waiting for unfinished jobs....
> /dev/shm/ward/MADlib/1.9/intel-2016.03-GCC-5.3-Python-2.7.11/incubator-madlib-master/src/dbal/DynamicStruct_impl.hpp(428):
> error: no instance of overloaded function
> "madlib::dbal::ByteStream<StreamBuf, TypeTraits, true>::seek [with Stream
> Buf=madlib::dbal::ByteStreamHandleBuf<madlib::dbconnector::postgres::MutableByteString,
> madlib::dbconnector::postgres::ByteString::char_type={char}, true>,
> TypeTraits=madlib::dbconnector::postgres::TypeTraits]" matches the argument
> list
> argument types are: (unsigned long, const std::ios_base::seekdir)
> object type is:
> madlib::dbal::ByteStream<madlib::dbal::ByteStreamHandleBuf<madlib::dbconnector::postgres::MutableByteString,
> madlib::dbconnector::postgres::ByteString::char_type, true>,
> madlib::dbconnector::postgres::TypeTrait
> s, true>
> inStream.template seek(begin + size, std::ios_base::beg);
> ^
> detected during:
> instantiation of "void madlib::dbal::DynamicStruct<Derived,
> Container, true>::bindToStream(madlib::dbal::DynamicStruct<Derived,
> Container, true>::ByteStream_type &) [with
> Derived=madlib::modules::regress::LinearRegressionAccum
> ulator<madlib::MutableRootContainer>,
> Container=madlib::MutableRootContainer]" at line 161 of
> "/dev/shm/ward/MADlib/1.9/intel-2016.03-GCC-5.3-Python-2.7.11/incubator-madlib-master/src/dbal/DynamicStruct_proto.hpp"
> instantiation of class "madlib::dbal::DynamicStruct<Derived,
> Container, IsMutable> [with
> Derived=madlib::modules::regress::LinearRegressionAccumulator<madlib::MutableRootContainer>,
> Container=madlib::MutableRootContainer, IsMu
> table=false]" at line 194
> instantiation of "void madlib::dbal::DynamicStructBase<Derived,
> madlib::dbal::DynamicStructRootContainer<Storage, TypeTraits>,
> IsMutable>::initialize() [with
> Derived=madlib::modules::regress::LinearRegressionAccumulator<madlib::MutableRootContainer>,
> IsMutable=false, Storage=madlib::dbconnector::postgres::MutableByteString,
> TypeTraits=madlib::dbconnector::postgres::TypeTraits]" at line 31 of
>
> "/dev/shm/ward/MADlib/1.9/intel-2016.03-GCC-5.3-Python-2.7.11/incubator-madlib-master/src/modules/regress/LinearRegression_impl.hpp"
> instantiation of
> "madlib::modules::regress::LinearRegressionAccumulator<Container>::LinearRegressionAccumulator(madlib::modules::regress::LinearRegressionAccumulator<Container>::Init_type
> &) [with Container=madlib::MutableRootContainer]" at line 29 of
> "/dev/shm/ward/MADlib/1.9/intel-2016.03-GCC-5.3-Python-2.7.11/incubator-madlib-master/src/modules/regress/linear.cpp"
> /dev/shm/ward/MADlib/1.9/intel-2016.03-GCC-5.3-Python-2.7.11/incubator-madlib-master/src/dbal/DynamicStruct_impl.hpp(428):
> error: no instance of overloaded function
> "madlib::dbal::ByteStream<StreamBuf, TypeTraits, true>::seek [with
> StreamBuf=madlib::dbal::ByteStreamHandleBuf<madlib::dbconnector::postgres::MutableByteString,
> madlib::dbconnector::postgres::ByteString::char_type={char}, true>,
> TypeTraits=madlib::dbconnector::postgres::TypeTraits]" matches the argument
> list
> argument types are: (unsigned long, const std::ios_base::seekdir)
> object type is:
> madlib::dbal::ByteStream<madlib::dbal::ByteStreamHandleBuf<madlib::dbconnector::postgres::MutableByteString,
> madlib::dbconnector::postgres::ByteString::char_type, true>,
> madlib::dbconnector::postgres::TypeTraits, true>
> inStream.template seek(begin + size, std::ios_base::beg);
> ^
> detected during:
> instantiation of "void madlib::dbal::DynamicStruct<Derived,
> Container, true>::bindToStream(madlib::dbal::DynamicStruct<Derived,
> Container, true>::ByteStream_type &) [with
> Derived=madlib::modules::regress::RobustLinearRegressionAccumulator<madlib::MutableRootContainer>,
> Container=madlib::MutableRootContainer]" at line 161 of
> "/dev/shm/ward/MADlib/1.9/intel-2016.03-GCC-5.3-Python-2.7.11/incubator-madlib-master/src/dbal/DynamicStruct_proto.hpp"
> instantiation of class "madlib::dbal::DynamicStruct<Derived,
> Container, IsMutable> [with
> Derived=madlib::modules::regress::RobustLinearRegressionAccumulator<madlib::MutableRootContainer>,
> Container=madlib::MutableRootContainer, IsMutable=false]" at line 194
> instantiation of "void madlib::dbal::DynamicStructBase<Derived,
> madlib::dbal::DynamicStructRootContainer<Storage, TypeTraits>,
> IsMutable>::initialize() [with
> Derived=madlib::modules::regress::RobustLinearRegressionAccumulator<madlib::MutableRootContainer>,
> IsMutable=false, Storage=madlib::dbconnector::postgres::MutableByteString,
> TypeTraits=madlib::dbconnector::postgres::TypeTraits]" at line 277 of
>
> "/dev/shm/ward/MADlib/1.9/intel-2016.03-GCC-5.3-Python-2.7.11/incubator-madlib-master/src/modules/regress/LinearRegression_impl.hpp"
> instantiation of
> "madlib::modules::regress::RobustLinearRegressionAccumulator<Container>::RobustLinearRegressionAccumulator(madlib::modules::regress::RobustLinearRegressionAccumulator<Container>::Init_type
> &) [with Container=madlib::MutableRootContainer]" at line 86 of
> "/dev/shm/ward/MADlib/1.9/intel-2016.03-GCC-5.3-Python-2.7.11/incubator-madlib-master/src/modules/regress/linear.cpp"
> /dev/shm/ward/MADlib/1.9/intel-2016.03-GCC-5.3-Python-2.7.11/incubator-madlib-master/src/dbal/DynamicStruct_impl.hpp(428):
> error: no instance of overloaded function
> "madlib::dbal::ByteStream<StreamBuf, TypeTraits, true>::seek [with
> StreamBuf=madlib::dbal::ByteStreamHandleBuf<madlib::dbconnector::postgres::MutableByteString,
> madlib::dbconnector::postgres::ByteString::char_type={char}, true>,
> TypeTraits=madlib::dbconnector::postgres::TypeTraits]" matches the argument
> list
> argument types are: (unsigned long, const std::ios_base::seekdir)
> object type is:
> madlib::dbal::ByteStream<madlib::dbal::ByteStreamHandleBuf<madlib::dbconnector::postgres::MutableByteString,
> madlib::dbconnector::postgres::ByteString::char_type, true>,
> madlib::dbconnector::postgres::TypeTraits, true>
> inStream.template seek(begin + size, std::ios_base::beg);
> ^
> detected during:
> instantiation of "void madlib::dbal::DynamicStruct<Derived,
> Container, true>::bindToStream(madlib::dbal::DynamicStruct<Derived,
> Container, true>::ByteStream_type &) [with
> Derived=madlib::modules::regress::HeteroLinearRegressionAccumulator<madlib::MutableRootContainer>,
> Container=madlib::MutableRootContainer]" at line 161 of
> "/dev/shm/ward/MADlib/1.9/intel-2016.03-GCC-5.3-Python-2.7.11/incubator-madlib-master/src/dbal/DynamicStruct_proto.hpp"
> instantiation of class "madlib::dbal::DynamicStruct<Derived,
> Container, IsMutable> [with
> Derived=madlib::modules::regress::HeteroLinearRegressionAccumulator<madlib::MutableRootContainer>,
> Container=madlib::MutableRootContainer, IsMutable=false]" at line 194
> instantiation of "void madlib::dbal::DynamicStructBase<Derived,
> madlib::dbal::DynamicStructRootContainer<Storage, TypeTraits>,
> IsMutable>::initialize() [with
> Derived=madlib::modules::regress::HeteroLinearRegressionAccumulator<madlib::MutableRootContainer>,
> IsMutable=false, Storage=madlib::dbconnector::postgres::MutableByteString,
> TypeTraits=madlib::dbconnector::postgres::TypeTraits]" at line 479 of
>
> "/dev/shm/ward/MADlib/1.9/intel-2016.03-GCC-5.3-Python-2.7.11/incubator-madlib-master/src/modules/regress/LinearRegression_impl.hpp"
> instantiation of
> "madlib::modules::regress::HeteroLinearRegressionAccumulator<Container>::HeteroLinearRegressionAccumulator(madlib::modules::regress::HeteroLinearRegressionAccumulator<Container>::Init_type
> &) [with Container=madlib::MutableRootContainer]" at line 155 of
> "/dev/shm/ward/MADlib/1.9/intel-2016.03-GCC-5.3-Python-2.7.11/incubator-madlib-master/src/modules/regress/linear.cpp"
> {code}
> This code compiles fine with GCC or Clang, so I'm not sure if this is a
> problem in MADlib or a compiler bug. Can anyone shed some light on this?
> Update: JIRA seems to mess with the formatting of build log, so here is the
> full version:
> https://gist.github.com/wpoely86/db03c94997e528ca17d960dd7af3c771
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)