[Trilinos-Users] Build issue with --enable-nox-belos

ryuta suzu0037 at aem.umn.edu
Mon Oct 29 13:31:14 MDT 2007


Hi,

I encounter a trouble with compiling NOX with Belos library interface.
Note that build failure occurs only when I add --enable-nox-belos to 
configure.
I speculate it is the issue with NOX's interfacing to Belos since Belos 
can be built with any problem.

Thank you,
Ryuta



/usr/local/bin/mpicxx -DHAVE_CONFIG_H

(so many lines of include and library paths)...

-DMPICH_IGNORE_CXX_SEEK -g -O2 -MT NOX_Belos_MultiVector.o -MD -MP -MF 
.deps/NOX_Belos_MultiVector.Tpo -c -o NOX_Belos_MultiVector.o `test -f 
'../../../../trilinos-8.0.3/packages/nox/src-belos/NOX_Belos_MultiVector.C' 
|| echo 
'../../../../trilinos-8.0.3/packages/nox/src-belos/'`../../../../trilinos-8.0.3/packages/nox/src-belos/NOX_Belos_MultiVector.C
../../../../trilinos-8.0.3/packages/nox/src-belos/NOX_Belos_MultiVector.C: 
In member function ‘virtual Belos::MultiVec<double>* 
NOX::Belos::MultiVector::Clone(int)’:
../../../../trilinos-8.0.3/packages/nox/src-belos/NOX_Belos_MultiVector.C:83: 
error: cannot allocate an object of abstract type ‘NOX::Belos::MultiVector’
../../../../trilinos-8.0.3/packages/nox/src-belos/NOX_Belos_MultiVector.H:54: 
note: because the following virtual functions are pure within 
‘NOX::Belos::MultiVector’:
/home/ryuta/Development/src/trilinos-8.0.3-build/packages/belos/../../../trilinos-8.0.3/packages/belos/src/BelosMultiVec.hpp:73: 
note: Belos::MultiVec<ScalarType>* 
Belos::MultiVec<ScalarType>::Clone(int) const [with ScalarType = double]
/home/ryuta/Development/src/trilinos-8.0.3-build/packages/belos/../../../trilinos-8.0.3/packages/belos/src/BelosMultiVec.hpp:81: 
note: Belos::MultiVec<ScalarType>* 
Belos::MultiVec<ScalarType>::CloneCopy() const [with ScalarType = double]
/home/ryuta/Development/src/trilinos-8.0.3-build/packages/belos/../../../trilinos-8.0.3/packages/belos/src/BelosMultiVec.hpp:90: 
note: Belos::MultiVec<ScalarType>* 
Belos::MultiVec<ScalarType>::CloneCopy(const std::vector<int, 
std::allocator<int> >&) const [with ScalarType = double]
/home/ryuta/Development/src/trilinos-8.0.3-build/packages/belos/../../../trilinos-8.0.3/packages/belos/src/BelosMultiVec.hpp:99: 
note: Belos::MultiVec<ScalarType>* 
Belos::MultiVec<ScalarType>::CloneView(const std::vector<int, 
std::allocator<int> >&) [with ScalarType = double]
/home/ryuta/Development/src/trilinos-8.0.3-build/packages/belos/../../../trilinos-8.0.3/packages/belos/src/BelosMultiVec.hpp:119: 
note: void Belos::MultiVec<ScalarType>::MvTimesMatAddMv(ScalarType, 
const Belos::MultiVec<ScalarType>&, const 
Teuchos::SerialDenseMatrix<int, ScalarType>&, ScalarType) [with 
ScalarType = double]
/home/ryuta/Development/src/trilinos-8.0.3-build/packages/belos/../../../trilinos-8.0.3/packages/belos/src/BelosMultiVec.hpp:124: 
note: void Belos::MultiVec<ScalarType>::MvAddMv(ScalarType, const 
Belos::MultiVec<ScalarType>&, ScalarType, const 
Belos::MultiVec<ScalarType>&) [with ScalarType = double]
/home/ryuta/Development/src/trilinos-8.0.3-build/packages/belos/../../../trilinos-8.0.3/packages/belos/src/BelosMultiVec.hpp:129: 
note: void Belos::MultiVec<ScalarType>::MvScale(ScalarType) [with 
ScalarType = double]
/home/ryuta/Development/src/trilinos-8.0.3-build/packages/belos/../../../trilinos-8.0.3/packages/belos/src/BelosMultiVec.hpp:134: 
note: void Belos::MultiVec<ScalarType>::MvScale(const std::vector<T, 
std::allocator<_CharT> >&) [with ScalarType = double]
/home/ryuta/Development/src/trilinos-8.0.3-build/packages/belos/../../../trilinos-8.0.3/packages/belos/src/BelosMultiVec.hpp:140: 
note: void Belos::MultiVec<ScalarType>::MvTransMv(ScalarType, const 
Belos::MultiVec<ScalarType>&, Teuchos::SerialDenseMatrix<int, 
ScalarType>&) const [with ScalarType = double]
/home/ryuta/Development/src/trilinos-8.0.3-build/packages/belos/../../../trilinos-8.0.3/packages/belos/src/BelosMultiVec.hpp:145: 
note: void Belos::MultiVec<ScalarType>::MvDot(const 
Belos::MultiVec<ScalarType>&, std::vector<T, std::allocator<_CharT> >&) 
const [with ScalarType = double]
/home/ryuta/Development/src/trilinos-8.0.3-build/packages/belos/../../../trilinos-8.0.3/packages/belos/src/BelosMultiVec.hpp:155: 
note: void Belos::MultiVec<ScalarType>::MvNorm(std::vector<typename 
Teuchos::ScalarTraits<T>::magnitudeType, std::allocator<typename 
Teuchos::ScalarTraits<T>::magnitudeType> >&, Belos::NormType) const 
[with ScalarType = double]
/home/ryuta/Development/src/trilinos-8.0.3-build/packages/belos/../../../trilinos-8.0.3/packages/belos/src/BelosMultiVec.hpp:165: 
note: void Belos::MultiVec<ScalarType>::SetBlock(const 
Belos::MultiVec<ScalarType>&, const std::vector<int, std::allocator<int> 
 >&) [with ScalarType = double]
/home/ryuta/Development/src/trilinos-8.0.3-build/packages/belos/../../../trilinos-8.0.3/packages/belos/src/BelosMultiVec.hpp:182: 
note: void Belos::MultiVec<ScalarType>::MvPrint(std::ostream&) const 
[with ScalarType = double]
../../../../trilinos-8.0.3/packages/nox/src-belos/NOX_Belos_MultiVector.C: 
In member function ‘virtual Belos::MultiVec<double>* 
NOX::Belos::MultiVector::CloneCopy()’:
../../../../trilinos-8.0.3/packages/nox/src-belos/NOX_Belos_MultiVector.C:90: 
error: cannot allocate an object of abstract type ‘NOX::Belos::MultiVector’
../../../../trilinos-8.0.3/packages/nox/src-belos/NOX_Belos_MultiVector.H:54: 
note: since type ‘NOX::Belos::MultiVector’ has pure virtual functions
../../../../trilinos-8.0.3/packages/nox/src-belos/NOX_Belos_MultiVector.C: 
In member function ‘virtual Belos::MultiVec<double>* 
NOX::Belos::MultiVector::CloneCopy(int*, int)’:
../../../../trilinos-8.0.3/packages/nox/src-belos/NOX_Belos_MultiVector.C:98: 
error: cannot allocate an object of abstract type ‘NOX::Belos::MultiVector’
../../../../trilinos-8.0.3/packages/nox/src-belos/NOX_Belos_MultiVector.H:54: 
note: since type ‘NOX::Belos::MultiVector’ has pure virtual functions
../../../../trilinos-8.0.3/packages/nox/src-belos/NOX_Belos_MultiVector.C: 
In member function ‘virtual Belos::MultiVec<double>* 
NOX::Belos::MultiVector::CloneView(int*, int)’:
../../../../trilinos-8.0.3/packages/nox/src-belos/NOX_Belos_MultiVector.C:106: 
error: cannot allocate an object of abstract type ‘NOX::Belos::MultiVector’
../../../../trilinos-8.0.3/packages/nox/src-belos/NOX_Belos_MultiVector.H:54: 
note: since type ‘NOX::Belos::MultiVector’ has pure virtual functions
../../../../trilinos-8.0.3/packages/nox/src-belos/NOX_Belos_MultiVector.C: 
In member function ‘virtual Belos::ReturnType 
NOX::Belos::MultiVector::MvNorm(double*, Belos::NormType)’:
../../../../trilinos-8.0.3/packages/nox/src-belos/NOX_Belos_MultiVector.C:182: 
error: ‘Ok’ is not a member of ‘Belos’
../../../../trilinos-8.0.3/packages/nox/src-belos/NOX_Belos_MultiVector.C: 
In member function ‘Belos::ReturnType 
NOX::Belos::MultiVector::noxReturnTypeToBelos(NOX::Abstract::Group::ReturnType) 
const’:
../../../../trilinos-8.0.3/packages/nox/src-belos/NOX_Belos_MultiVector.C:234: 
error: ‘Ok’ is not a member of ‘Belos’
../../../../trilinos-8.0.3/packages/nox/src-belos/NOX_Belos_MultiVector.C:236: 
error: cannot convert ‘Belos::StatusType’ to ‘Belos::ReturnType’ in return
../../../../trilinos-8.0.3/packages/nox/src-belos/NOX_Belos_MultiVector.C:238: 
error: ‘Error’ is not a member of ‘Belos’
make[4]: *** [NOX_Belos_MultiVector.o] Error 1
make[4]: Leaving directory 
`/home/ryuta/Development/src/trilinos-8.0.3-build/packages/nox/src-belos'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory 
`/home/ryuta/Development/src/trilinos-8.0.3-build/packages/nox'





More information about the Trilinos-Users mailing list