Dear all,
I was trying to switch with my dealii-code to my new Macbook(Intel
Core 2 Duo). The dealii library compiles without an error. All
examples work correctly.
If I compile my own code with the Makefile for large projects from the
deal website, I run into linker errors. Everything was Ok on a linux
machine.
To repeat the error, I split the step-13.cc example into 3 files:
include/evaluation.h
source/evaluation.cc
source/step-13.cc
I get the following:
noname:split_step-13 chris$ make
Makefile:147: lib/Makefile.dep: No such file or directory
=====waves=======2d================== Remaking lib/Makefile.dep
=====waves=======2d====optimized=MT== evaluation.cc
/usr/bin/g++ -DHAVE_CONFIG_H -O2 -Wuninitialized -felide-constructors -
ftemplate-depth-128 -funroll-loops -funroll-all-loops -fstrict-
aliasing -Wno-long-double -D_REENTRANT -D_THREAD_SAFE -D_REENTRANT -
march=i686 -I/sw/source/deal.II-SERIAL/base/include -I/sw/source/
deal.II-SERIAL/lac/include -I/sw/source/deal.II-SERIAL/deal.II/include
-I/sw/source/deal.II-SERIAL/contrib/boost/include -I/sw/source/deal.II-
SERIAL/contrib -I/sw/source/trilinos-8.0.7/SERIAL/include -I. -
Ddeal_II_dimension=2 -c source/evaluation.cc -o lib/2d/evaluation.o
=====waves=======2d====optimized=MT== step-13.cc
/usr/bin/g++ -DHAVE_CONFIG_H -O2 -Wuninitialized -felide-constructors -
ftemplate-depth-128 -funroll-loops -funroll-all-loops -fstrict-
aliasing -Wno-long-double -D_REENTRANT -D_THREAD_SAFE -D_REENTRANT -
march=i686 -I/sw/source/deal.II-SERIAL/base/include -I/sw/source/
deal.II-SERIAL/lac/include -I/sw/source/deal.II-SERIAL/deal.II/include
-I/sw/source/deal.II-SERIAL/contrib/boost/include -I/sw/source/deal.II-
SERIAL/contrib -I/sw/source/trilinos-8.0.7/SERIAL/include -I. -
Ddeal_II_dimension=2 -c source/step-13.cc -o lib/2d/step-13.o
=====waves=======2d==============MT== Linking application-name-2d
/usr/bin/g++ -o lib/application-name-2d lib/2d/evaluation.o lib/2d/
step-13.o /sw/source/deal.II-SERIAL/lib/libdeal_II_2d.a /sw/source/
deal.II-SERIAL/lib/liblac.a /sw/source/trilinos-8.0.7/SERIAL/lib/
libamesos.a /sw/source/trilinos-8.0.7/SERIAL/lib/libaztecoo.a /sw/
source/trilinos-8.0.7/SERIAL/lib/libepetra.a /sw/source/trilinos-8.0.7/
SERIAL/lib/libepetraext.a /sw/source/trilinos-8.0.7/SERIAL/lib/
libgaleri.a /sw/source/trilinos-8.0.7/SERIAL/lib/libifpack.a /sw/
source/trilinos-8.0.7/SERIAL/lib/libml.a /sw/source/trilinos-8.0.7/
SERIAL/lib/libsacado.a /sw/source/trilinos-8.0.7/SERIAL/lib/
libteuchos.a /sw/source/trilinos-8.0.7/SERIAL/lib/libtriutils.a /sw/
source/deal.II-SERIAL/lib/libbase.a -llapack -lz -L/sw/source/deal.II-
SERIAL/lib -Wl,-rpath,/sw/source/deal.II-SERIAL/lib -rdynamic -
framework Accelerate
Undefined symbols:
"Evaluation::EvaluationBase<2>::~EvaluationBase()", referenced from:
Evaluation::PointValueEvaluation<2>::~PointValueEvaluation()in
step-13.o
Evaluation::PointValueEvaluation<2>::~PointValueEvaluation()in
step-13.o
Evaluation::SolutionOutput<2>::~SolutionOutput()in step-13.o
Evaluation::SolutionOutput<2>::~SolutionOutput()in step-13.o
Evaluation::SolutionOutput<2>::~SolutionOutput()in step-13.o
Evaluation::SolutionOutput<2>::~SolutionOutput()in step-13.o
void solve_problem<2>(std::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&)in step-13.o
void solve_problem<2>(std::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&)in step-13.o
void solve_problem<2>(std::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&)in step-13.o
void solve_problem<2>(std::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&)in step-13.o
void solve_problem<2>(std::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&)in step-13.o
"Evaluation::PointValueEvaluation<2>::operator()
(dealii::DoFHandler<2> const&, dealii::Vector<double> const&) const",
referenced from:
vtable for Evaluation::PointValueEvaluation<2> in step-13.o
"Evaluation::SolutionOutput<2>::SolutionOutput(std::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&,
dealii::DataOutBase::OutputFormat)", referenced from:
void solve_problem<2>(std::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&)in step-13.o
"Evaluation::EvaluationBase<2>::set_refinement_cycle(unsigned
int)", referenced from:
void run_simulation<2>(LaplaceSolver::Base<2>&,
std::list<Evaluation::EvaluationBase<2>*,
std::allocator<Evaluation::EvaluationBase<2>*> > const&)in step-13.o
void run_simulation<2>(LaplaceSolver::Base<2>&,
std::list<Evaluation::EvaluationBase<2>*,
std::allocator<Evaluation::EvaluationBase<2>*> > const&)in step-13.o
void run_simulation<2>(LaplaceSolver::Base<2>&,
std::list<Evaluation::EvaluationBase<2>*,
std::allocator<Evaluation::EvaluationBase<2>*> > const&)in step-13.o
void run_simulation<2>(LaplaceSolver::Base<2>&,
std::list<Evaluation::EvaluationBase<2>*,
std::allocator<Evaluation::EvaluationBase<2>*> > const&)in step-13.o
"Evaluation
::PointValueEvaluation<2>::PointValueEvaluation(dealii::Point<2>
const&, dealii::TableHandler&)", referenced from:
void solve_problem<2>(std::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&)in step-13.o
"Evaluation::SolutionOutput<2>::operator()(dealii::DoFHandler<2>
const&, dealii::Vector<double> const&) const", referenced from:
vtable for Evaluation::SolutionOutput<2> in step-13.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
make: *** [lib/application-name-2d] Error 1
noname:split_step-13 chris$
Where is the error?
Best regards
Christian
_______________________________________________