[Paradiseo-help] copy tutorial bug !!!

Alireza Nourian alireza.nournia at gmail.com
Mer 14 Sep 10:30:03 CEST 2011


Hi,
I've got some crazy problems with the Paradise-* parts. I copied
paradise-eo/tutorial/Lesson4/ESEA.cpp content file to
paradise-mo/tutorial/Lesson7/hybridAlgo.cpp file.
I expected that make command generate executable without any problem. But
there are some crazy ones here:
The main problem is around these functions: make_genotype, make_op, make_pop
and make_*

error log:

CMakeFiles/hybridAlgo.dir/hybridAlgo.cpp.o: In function `void
runAlgorithm<eoEsSimple<eoScalarFitness<double, std::greater<double> > >
>(eoEsSimple<eoScalarFitness<double, std::greater<double> > >, eoParser&,
eoState&)':
hybridAlgo.cpp:(.text._Z12runAlgorithmI10eoEsSimpleI15eoScalarFitnessIdSt7greaterIdEEEEvT_R8eoParserR7eoState[void
runAlgorithm<eoEsSimple<eoScalarFitness<double, std::greater<double> > >
>(eoEsSimple<eoScalarFitness<double, std::greater<double> > >, eoParser&,
eoState&)]+0x3f4): undefined reference to `make_genotype(eoParser&,
eoState&, eoEsSimple<eoScalarFitness<double, std::greater<double> > >)'
hybridAlgo.cpp:(.text._Z12runAlgorithmI10eoEsSimpleI15eoScalarFitnessIdSt7greaterIdEEEEvT_R8eoParserR7eoState[void
runAlgorithm<eoEsSimple<eoScalarFitness<double, std::greater<double> > >
>(eoEsSimple<eoScalarFitness<double, std::greater<double> > >, eoParser&,
eoState&)]+0x44f): undefined reference to `make_op(eoParser&, eoState&,
eoRealInitBounded<eoEsSimple<eoScalarFitness<double, std::greater<double> >
> >&)'
hybridAlgo.cpp:(.text._Z12runAlgorithmI10eoEsSimpleI15eoScalarFitnessIdSt7greaterIdEEEEvT_R8eoParserR7eoState[void
runAlgorithm<eoEsSimple<eoScalarFitness<double, std::greater<double> > >
>(eoEsSimple<eoScalarFitness<double, std::greater<double> > >, eoParser&,
eoState&)]+0x474): undefined reference to `make_pop(eoParser&, eoState&,
eoInit<eoEsSimple<eoScalarFitness<double, std::greater<double> > > >&)'
hybridAlgo.cpp:(.text._Z12runAlgorithmI10eoEsSimpleI15eoScalarFitnessIdSt7greaterIdEEEEvT_R8eoParserR7eoState[void
runAlgorithm<eoEsSimple<eoScalarFitness<double, std::greater<double> > >
>(eoEsSimple<eoScalarFitness<double, std::greater<double> > >, eoParser&,
eoState&)]+0x4e8): undefined reference to `make_continue(eoParser&,
eoState&, eoEvalFuncCounter<eoEsSimple<eoScalarFitness<double,
std::greater<double> > > >&)'
hybridAlgo.cpp:(.text._Z12runAlgorithmI10eoEsSimpleI15eoScalarFitnessIdSt7greaterIdEEEEvT_R8eoParserR7eoState[void
runAlgorithm<eoEsSimple<eoScalarFitness<double, std::greater<double> > >
>(eoEsSimple<eoScalarFitness<double, std::greater<double> > >, eoParser&,
eoState&)]+0x508): undefined reference to `make_checkpoint(eoParser&,
eoState&, eoEvalFuncCounter<eoEsSimple<eoScalarFitness<double,
std::greater<double> > > >&, eoContinue<eoEsSimple<eoScalarFitness<double,
std::greater<double> > > >&)'
hybridAlgo.cpp:(.text._Z12runAlgorithmI10eoEsSimpleI15eoScalarFitnessIdSt7greaterIdEEEEvT_R8eoParserR7eoState[void
runAlgorithm<eoEsSimple<eoScalarFitness<double, std::greater<double> > >
>(eoEsSimple<eoScalarFitness<double, std::greater<double> > >, eoParser&,
eoState&)]+0x53a): undefined reference to `make_algo_scalar(eoParser&,
eoState&, eoEvalFunc<eoEsSimple<eoScalarFitness<double, std::greater<double>
> > >&, eoContinue<eoEsSimple<eoScalarFitness<double, std::greater<double> >
> >&, eoGenOp<eoEsSimple<eoScalarFitness<double, std::greater<double> > >
>&, eoDistance<eoEsSimple<eoScalarFitness<double, std::greater<double> > >
>*)'
hybridAlgo.cpp:(.text._Z12runAlgorithmI10eoEsSimpleI15eoScalarFitnessIdSt7greaterIdEEEEvT_R8eoParserR7eoState[void
runAlgorithm<eoEsSimple<eoScalarFitness<double, std::greater<double> > >
>(eoEsSimple<eoScalarFitness<double, std::greater<double> > >, eoParser&,
eoState&)]+0x5be): undefined reference to
`run_ea(eoAlgo<eoEsSimple<eoScalarFitness<double, std::greater<double> > >
>&, eoPop<eoEsSimple<eoScalarFitness<double, std::greater<double> > > >&)'
CMakeFiles/hybridAlgo.dir/hybridAlgo.cpp.o: In function `void
runAlgorithm<eoReal<eoScalarFitness<double, std::greater<double> > >
>(eoReal<eoScalarFitness<double, std::greater<double> > >, eoParser&,
eoState&)':
hybridAlgo.cpp:(.text._Z12runAlgorithmI6eoRealI15eoScalarFitnessIdSt7greaterIdEEEEvT_R8eoParserR7eoState[void
runAlgorithm<eoReal<eoScalarFitness<double, std::greater<double> > >
>(eoReal<eoScalarFitness<double, std::greater<double> > >, eoParser&,
eoState&)]+0x3ee): undefined reference to `make_genotype(eoParser&,
eoState&, eoReal<eoScalarFitness<double, std::greater<double> > >)'
hybridAlgo.cpp:(.text._Z12runAlgorithmI6eoRealI15eoScalarFitnessIdSt7greaterIdEEEEvT_R8eoParserR7eoState[void
runAlgorithm<eoReal<eoScalarFitness<double, std::greater<double> > >
>(eoReal<eoScalarFitness<double, std::greater<double> > >, eoParser&,
eoState&)]+0x443): undefined reference to `make_op(eoParser&, eoState&,
eoRealInitBounded<eoReal<eoScalarFitness<double, std::greater<double> > >
>&)'
hybridAlgo.cpp:(.text._Z12runAlgorithmI6eoRealI15eoScalarFitnessIdSt7greaterIdEEEEvT_R8eoParserR7eoState[void
runAlgorithm<eoReal<eoScalarFitness<double, std::greater<double> > >
>(eoReal<eoScalarFitness<double, std::greater<double> > >, eoParser&,
eoState&)]+0x45f): undefined reference to `make_pop(eoParser&, eoState&,
eoInit<eoReal<eoScalarFitness<double, std::greater<double> > > >&)'
hybridAlgo.cpp:(.text._Z12runAlgorithmI6eoRealI15eoScalarFitnessIdSt7greaterIdEEEEvT_R8eoParserR7eoState[void
runAlgorithm<eoReal<eoScalarFitness<double, std::greater<double> > >
>(eoReal<eoScalarFitness<double, std::greater<double> > >, eoParser&,
eoState&)]+0x4b8): undefined reference to `make_continue(eoParser&,
eoState&, eoEvalFuncCounter<eoReal<eoScalarFitness<double,
std::greater<double> > > >&)'
hybridAlgo.cpp:(.text._Z12runAlgorithmI6eoRealI15eoScalarFitnessIdSt7greaterIdEEEEvT_R8eoParserR7eoState[void
runAlgorithm<eoReal<eoScalarFitness<double, std::greater<double> > >
>(eoReal<eoScalarFitness<double, std::greater<double> > >, eoParser&,
eoState&)]+0x4d2): undefined reference to `make_checkpoint(eoParser&,
eoState&, eoEvalFuncCounter<eoReal<eoScalarFitness<double,
std::greater<double> > > >&, eoContinue<eoReal<eoScalarFitness<double,
std::greater<double> > > >&)'
hybridAlgo.cpp:(.text._Z12runAlgorithmI6eoRealI15eoScalarFitnessIdSt7greaterIdEEEEvT_R8eoParserR7eoState[void
runAlgorithm<eoReal<eoScalarFitness<double, std::greater<double> > >
>(eoReal<eoScalarFitness<double, std::greater<double> > >, eoParser&,
eoState&)]+0x4fe): undefined reference to `make_algo_scalar(eoParser&,
eoState&, eoEvalFunc<eoReal<eoScalarFitness<double, std::greater<double> > >
>&, eoContinue<eoReal<eoScalarFitness<double, std::greater<double> > > >&,
eoGenOp<eoReal<eoScalarFitness<double, std::greater<double> > > >&,
eoDistance<eoReal<eoScalarFitness<double, std::greater<double> > > >*)'
hybridAlgo.cpp:(.text._Z12runAlgorithmI6eoRealI15eoScalarFitnessIdSt7greaterIdEEEEvT_R8eoParserR7eoState[void
runAlgorithm<eoReal<eoScalarFitness<double, std::greater<double> > >
>(eoReal<eoScalarFitness<double, std::greater<double> > >, eoParser&,
eoState&)]+0x58c): undefined reference to
`run_ea(eoAlgo<eoReal<eoScalarFitness<double, std::greater<double> > > >&,
eoPop<eoReal<eoScalarFitness<double, std::greater<double> > > >&)'
CMakeFiles/hybridAlgo.dir/hybridAlgo.cpp.o: In function `void
runAlgorithm<eoEsStdev<eoScalarFitness<double, std::greater<double> > >
>(eoEsStdev<eoScalarFitness<double, std::greater<double> > >, eoParser&,
eoState&)':
hybridAlgo.cpp:(.text._Z12runAlgorithmI9eoEsStdevI15eoScalarFitnessIdSt7greaterIdEEEEvT_R8eoParserR7eoState[void
runAlgorithm<eoEsStdev<eoScalarFitness<double, std::greater<double> > >
>(eoEsStdev<eoScalarFitness<double, std::greater<double> > >, eoParser&,
eoState&)]+0x40c): undefined reference to `make_genotype(eoParser&,
eoState&, eoEsStdev<eoScalarFitness<double, std::greater<double> > >)'
hybridAlgo.cpp:(.text._Z12runAlgorithmI9eoEsStdevI15eoScalarFitnessIdSt7greaterIdEEEEvT_R8eoParserR7eoState[void
runAlgorithm<eoEsStdev<eoScalarFitness<double, std::greater<double> > >
>(eoEsStdev<eoScalarFitness<double, std::greater<double> > >, eoParser&,
eoState&)]+0x487): undefined reference to `make_op(eoParser&, eoState&,
eoRealInitBounded<eoEsStdev<eoScalarFitness<double, std::greater<double> > >
>&)'
hybridAlgo.cpp:(.text._Z12runAlgorithmI9eoEsStdevI15eoScalarFitnessIdSt7greaterIdEEEEvT_R8eoParserR7eoState[void
runAlgorithm<eoEsStdev<eoScalarFitness<double, std::greater<double> > >
>(eoEsStdev<eoScalarFitness<double, std::greater<double> > >, eoParser&,
eoState&)]+0x4a3): undefined reference to `make_pop(eoParser&, eoState&,
eoInit<eoEsStdev<eoScalarFitness<double, std::greater<double> > > >&)'
hybridAlgo.cpp:(.text._Z12runAlgorithmI9eoEsStdevI15eoScalarFitnessIdSt7greaterIdEEEEvT_R8eoParserR7eoState[void
runAlgorithm<eoEsStdev<eoScalarFitness<double, std::greater<double> > >
>(eoEsStdev<eoScalarFitness<double, std::greater<double> > >, eoParser&,
eoState&)]+0x504): undefined reference to `make_continue(eoParser&,
eoState&, eoEvalFuncCounter<eoEsStdev<eoScalarFitness<double,
std::greater<double> > > >&)'
hybridAlgo.cpp:(.text._Z12runAlgorithmI9eoEsStdevI15eoScalarFitnessIdSt7greaterIdEEEEvT_R8eoParserR7eoState[void
runAlgorithm<eoEsStdev<eoScalarFitness<double, std::greater<double> > >
>(eoEsStdev<eoScalarFitness<double, std::greater<double> > >, eoParser&,
eoState&)]+0x51e): undefined reference to `make_checkpoint(eoParser&,
eoState&, eoEvalFuncCounter<eoEsStdev<eoScalarFitness<double,
std::greater<double> > > >&, eoContinue<eoEsStdev<eoScalarFitness<double,
std::greater<double> > > >&)'
hybridAlgo.cpp:(.text._Z12runAlgorithmI9eoEsStdevI15eoScalarFitnessIdSt7greaterIdEEEEvT_R8eoParserR7eoState[void
runAlgorithm<eoEsStdev<eoScalarFitness<double, std::greater<double> > >
>(eoEsStdev<eoScalarFitness<double, std::greater<double> > >, eoParser&,
eoState&)]+0x54a): undefined reference to `make_algo_scalar(eoParser&,
eoState&, eoEvalFunc<eoEsStdev<eoScalarFitness<double, std::greater<double>
> > >&, eoContinue<eoEsStdev<eoScalarFitness<double, std::greater<double> >
> >&, eoGenOp<eoEsStdev<eoScalarFitness<double, std::greater<double> > > >&,
eoDistance<eoEsStdev<eoScalarFitness<double, std::greater<double> > > >*)'
hybridAlgo.cpp:(.text._Z12runAlgorithmI9eoEsStdevI15eoScalarFitnessIdSt7greaterIdEEEEvT_R8eoParserR7eoState[void
runAlgorithm<eoEsStdev<eoScalarFitness<double, std::greater<double> > >
>(eoEsStdev<eoScalarFitness<double, std::greater<double> > >, eoParser&,
eoState&)]+0x5d8): undefined reference to
`run_ea(eoAlgo<eoEsStdev<eoScalarFitness<double, std::greater<double> > >
>&, eoPop<eoEsStdev<eoScalarFitness<double, std::greater<double> > > >&)'
CMakeFiles/hybridAlgo.dir/hybridAlgo.cpp.o: In function `void
runAlgorithm<eoEsFull<eoScalarFitness<double, std::greater<double> > >
>(eoEsFull<eoScalarFitness<double, std::greater<double> > >, eoParser&,
eoState&)':
hybridAlgo.cpp:(.text._Z12runAlgorithmI8eoEsFullI15eoScalarFitnessIdSt7greaterIdEEEEvT_R8eoParserR7eoState[void
runAlgorithm<eoEsFull<eoScalarFitness<double, std::greater<double> > >
>(eoEsFull<eoScalarFitness<double, std::greater<double> > >, eoParser&,
eoState&)]+0x42a): undefined reference to `make_genotype(eoParser&,
eoState&, eoEsFull<eoScalarFitness<double, std::greater<double> > >)'
hybridAlgo.cpp:(.text._Z12runAlgorithmI8eoEsFullI15eoScalarFitnessIdSt7greaterIdEEEEvT_R8eoParserR7eoState[void
runAlgorithm<eoEsFull<eoScalarFitness<double, std::greater<double> > >
>(eoEsFull<eoScalarFitness<double, std::greater<double> > >, eoParser&,
eoState&)]+0x4bd): undefined reference to `make_op(eoParser&, eoState&,
eoRealInitBounded<eoEsFull<eoScalarFitness<double, std::greater<double> > >
>&)'
hybridAlgo.cpp:(.text._Z12runAlgorithmI8eoEsFullI15eoScalarFitnessIdSt7greaterIdEEEEvT_R8eoParserR7eoState[void
runAlgorithm<eoEsFull<eoScalarFitness<double, std::greater<double> > >
>(eoEsFull<eoScalarFitness<double, std::greater<double> > >, eoParser&,
eoState&)]+0x4e2): undefined reference to `make_pop(eoParser&, eoState&,
eoInit<eoEsFull<eoScalarFitness<double, std::greater<double> > > >&)'
hybridAlgo.cpp:(.text._Z12runAlgorithmI8eoEsFullI15eoScalarFitnessIdSt7greaterIdEEEEvT_R8eoParserR7eoState[void
runAlgorithm<eoEsFull<eoScalarFitness<double, std::greater<double> > >
>(eoEsFull<eoScalarFitness<double, std::greater<double> > >, eoParser&,
eoState&)]+0x558): undefined reference to `make_continue(eoParser&,
eoState&, eoEvalFuncCounter<eoEsFull<eoScalarFitness<double,
std::greater<double> > > >&)'
hybridAlgo.cpp:(.text._Z12runAlgorithmI8eoEsFullI15eoScalarFitnessIdSt7greaterIdEEEEvT_R8eoParserR7eoState[void
runAlgorithm<eoEsFull<eoScalarFitness<double, std::greater<double> > >
>(eoEsFull<eoScalarFitness<double, std::greater<double> > >, eoParser&,
eoState&)]+0x578): undefined reference to `make_checkpoint(eoParser&,
eoState&, eoEvalFuncCounter<eoEsFull<eoScalarFitness<double,
std::greater<double> > > >&, eoContinue<eoEsFull<eoScalarFitness<double,
std::greater<double> > > >&)'
hybridAlgo.cpp:(.text._Z12runAlgorithmI8eoEsFullI15eoScalarFitnessIdSt7greaterIdEEEEvT_R8eoParserR7eoState[void
runAlgorithm<eoEsFull<eoScalarFitness<double, std::greater<double> > >
>(eoEsFull<eoScalarFitness<double, std::greater<double> > >, eoParser&,
eoState&)]+0x5aa): undefined reference to `make_algo_scalar(eoParser&,
eoState&, eoEvalFunc<eoEsFull<eoScalarFitness<double, std::greater<double> >
> >&, eoContinue<eoEsFull<eoScalarFitness<double, std::greater<double> > >
>&, eoGenOp<eoEsFull<eoScalarFitness<double, std::greater<double> > > >&,
eoDistance<eoEsFull<eoScalarFitness<double, std::greater<double> > > >*)'
hybridAlgo.cpp:(.text._Z12runAlgorithmI8eoEsFullI15eoScalarFitnessIdSt7greaterIdEEEEvT_R8eoParserR7eoState[void
runAlgorithm<eoEsFull<eoScalarFitness<double, std::greater<double> > >
>(eoEsFull<eoScalarFitness<double, std::greater<double> > >, eoParser&,
eoState&)]+0x62e): undefined reference to
`run_ea(eoAlgo<eoEsFull<eoScalarFitness<double, std::greater<double> > > >&,
eoPop<eoEsFull<eoScalarFitness<double, std::greater<double> > > >&)'
collect2: ld returned 1 exit status
make[2]: *** [tutorial/Lesson7/hybridAlgo] Error 1
make[1]: *** [tutorial/Lesson7/CMakeFiles/hybridAlgo.dir/all] Error 2
make: *** [all] Error 2
-------------- section suivante --------------
Une pièce jointe HTML a été nettoyée...
URL: <http://lists.gforge.inria.fr/pipermail/paradiseo-help/attachments/20110914/3582dceb/attachment.html>


Plus d'informations sur la liste de diffusion Paradiseo-help