[Trilinos-Users] Problem with building thyraepetraext example
饶锴
raokai1314 at gmail.com
Thu Sep 25 22:16:40 MDT 2008
I find the problem, libthyraepetraext depend on libthyraepetra , so in
Makefile , -lthyraepetraext should be in front of -lthyraepetra.
Sorry for troubling , i should have looked at the thyraepetraext source file
for help first~
2008/9/26 饶锴 <raokai1314 at gmail.com>
> Hi all,
> I come with a problem when i build
> "/packages/thyra/adapters/epetraext/example/model_evaluator".
> My building process is as follows.
> Copy the "ForwardSolveEpetraModelEval2DSimMain.cpp" and the related
> .h and .cpp files to my own directory.
> I've got
> "EpetraModelEval2DSim.cpp EpetraModelEval4DOpt.hpp
> EpetraModelEval2DSim.hpp ForwardSolveEpetraModelEval2DSimMain.cpp
> EpetraModelEval4DOpt.cpp Makefile" in my work directory.
>
> When i make the project , the compiling process is correct while linking
> meets error. The libthyraepetraext.a cannot be linked correctly.
> The error msg is as follows:
>
> *************************************************************************************
> mpicxx -DMPICH_IGNORE_CXX_SEEK -c EpetraModelEval2DSim.cpp '-I
> /media/sda5/Trilinos/include' '-L /media/sda5/Trilinos/lib'
> mpicxx -DMPICH_IGNORE_CXX_SEEK -c EpetraModelEval4DOpt.cpp '-I
> /media/sda5/Trilinos/include' '-L /media/sda5/Trilinos/lib'
> mpicxx -DMPICH_IGNORE_CXX_SEEK -c
> ForwardSolveEpetraModelEval2DSimMain.cpp '-I /media/sda5/Trilinos/include'
> '-L /media/sda5/Trilinos/lib'
> mpicxx -DHAVE_MPI -DMPICH_IGNORE_CXX_SEEK -o out EpetraModelEval2DSim.o
> EpetraModelEval4DOpt.o ForwardSolveEpetraModelEval2DSimMain.o '-I
> /media/sda5/Trilinos/include' '-L /media/sda5/Trilinos/lib' -lrythmos
> -lthyraepetra -lthyraepetraext -lthyra -lstratimikos -lnew_package -lrtop
> -lloca -lifpack -lepetraext -lteuchos -lepetra -lml -ltriutils -lnox
> -lkokkos -lblas -llapack
> /media/sda5/Trilinos/lib/libthyraepetraext.a(Thyra_EpetraModelEvaluator.o):
> In function `Thyra::convert(Thyra::ModelEvaluatorBase::Derivative<double>
> const&, Teuchos::RCP<Epetra_Map const> const&, Teuchos::RCP<Epetra_Map
> const> const&)':
> Thyra_EpetraModelEvaluator.cpp:(.text+0x2654): undefined reference to
> `Thyra::EpetraLinearOp::epetra_op() const'
> Thyra_EpetraModelEvaluator.cpp:(.text+0x2856): undefined reference to
> `Thyra::get_Epetra_MultiVector(Epetra_Map const&,
> Teuchos::RCP<Thyra::MultiVectorBase<double> > const&)'
> /media/sda5/Trilinos/lib/libthyraepetraext.a(Thyra_EpetraModelEvaluator.o):
> In function
> `Thyra::EpetraModelEvaluator::finishConvertingOutArgsFromEpetraToThyra(EpetraExt::ModelEvaluator::OutArgs
> const&, Teuchos::RCP<Thyra::LinearOpWithSolveBase<double, double> >&,
> Teuchos::RCP<Thyra::LinearOpBase<double, double> >&,
> Teuchos::RCP<Thyra::LinearOpBase<double, double> const>&,
> Teuchos::RCP<Thyra::EpetraLinearOp>&, Teuchos::RCP<Epetra_Operator>&,
> Thyra::ModelEvaluatorBase::OutArgs<double> const&) const':
> Thyra_EpetraModelEvaluator.cpp:(.text+0x3444): undefined reference to
> `Thyra::EpetraLinearOp::initialize(Teuchos::RCP<Epetra_Operator> const&,
> Thyra::ETransp, Thyra::EApplyEpetraOpAs, Thyra::EAdjointEpetraOp,
> Teuchos::RCP<Thyra::SpmdVectorSpaceBase<double> const> const&,
> Teuchos::RCP<Thyra::SpmdVectorSpaceBase<double> const> const&)'
> ...................others omitted...............
>
> *************************************************************************************
> I am wonderring which lib i missed. My makefile is as follows:
>
> **************************************************************************************
> CC = mpicxx
> HEAD = '-I /media/sda5/Trilinos/include'
> LIBS = '-L /media/sda5/Trilinos/lib'
> EXE = out
> SRCS= $(wildcard *.cpp)
> OBJS= $(SRCS:%.cpp=%.o)
>
> all : $(EXE)
>
> $(EXE):$(OBJS)
> $(CC) -DHAVE_MPI -DMPICH_IGNORE_CXX_SEEK -o $@ $(OBJS) $(HEAD)
> $(LIBS) -lrythmos -lthyraepetra -lthyraepetraext -lthyra -lstratimikos
> -lnew_package -lrtop -lloca -lifpack -lepetraext -lteuchos -lepetra -lml
> -ltriutils -lnox -lkokkos -lblas -llapack
>
> $(OBJS):%.o:%.cpp
> $(CC) -DMPICH_IGNORE_CXX_SEEK -c $< $(HEAD) $(LIBS)
> clean:
> rm -f *.o *.txt
> cleanall:clean
> rm -f $(EXE)
>
>
> ******************************************************************************
>
> In my lib directory , there are
>
> libaztecoo.a libloca.a librythmos.a libthyraepetraext.a
> libepetra.a libml.a libstratimikos.a libtriutils.a
> libepetraext.a libnew_package.a libteuchos.a
> libifpack.a libnox.a libthyra.a
> libkokkos.a librtop.a libthyraepetra.a
>
> Please help me find where the problem is, thanks!
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://software.sandia.gov/mailman/private/trilinos-users/attachments/20080926/9856207b/attachment-0001.html
More information about the Trilinos-Users
mailing list