[gecode-users] Gecode installation/compilation/usage

Manu Kaul manu.kaul at gmail.com
Fri Sep 3 13:12:23 CEST 2010


Hi all,
I have just downloaded the latest 3.4.0 macosx image and installed the
package on my machine. I am having problems when I run the program.
*
*
*My platform*

System Version: Mac OS X 10.6.4 (10F569)

Kernel Version: Darwin 10.4.0

*g++ version on macosx*
*
$ g++
i686-apple-darwin10-g++-4.2.1:
*

*How I compiled the sample.cpp code from the user guide.*
$ g++ -o sample sample.cpp *-framework gecode*
*
*
*The execution error*
$ ./sample
dyld: Library not loaded: QtGui.framework/Versions/4/QtGui
  Referenced from: /Library/Frameworks/gecode.framework/Versions/23/gecode
  Reason: image not found
Trace/BPT trap

I wonder what the command line options for macosx should be to run this
program? I am referring to MPG.pdf reference guide Section 2.3.2!
It says that I should have used gcc instead - but compiling a C++ program
with gcc gives me -->

*$ gcc -o sample sample.cpp -framework gecode*
Undefined symbols:
  "operator delete(void*)", referenced from:
      Gecode::Iter::Ranges::Virt::Iterator::~Iterator()in ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::Iterator::~Iterator()in ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::Union::~Union()in ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::Union::~Union()in ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::NaryUnion::~NaryUnion()in ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::Inter::~Inter()in ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::Inter::~Inter()in ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::NaryInter::~NaryInter()in ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::NaryInter::~NaryInter()in ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::ComplVal::~ComplVal()in ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::ComplVal::~ComplVal()in ccJBe0zW.o
      Gecode::Search::Stop::~Stop()in ccJBe0zW.o
      Gecode::Search::Stop::~Stop()in ccJBe0zW.o
      Gecode::Exception::~Exception()in ccJBe0zW.o
      Gecode::MemoryExhausted::~MemoryExhausted()in ccJBe0zW.o
      Gecode::MemoryExhausted::~MemoryExhausted()in ccJBe0zW.o
      Gecode::Gist::Print<SendMoreMoney>::~Print()in ccJBe0zW.o
      Gecode::Gist::Print<SendMoreMoney>::~Print()in ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::NaryUnion::~NaryUnion()in ccJBe0zW.o
  "std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::~basic_string()", referenced from:
      _main in ccJBe0zW.o
      _main in ccJBe0zW.o
      std::basic_ostream<char, std::char_traits<char> >&
Gecode::Int::print_view<char, std::char_traits<char>,
Gecode::Int::IntView>(std::basic_ostream<char, std::char_traits<char> >&,
Gecode::Int::IntView const&)in ccJBe0zW.o
      std::basic_ostream<char, std::char_traits<char> >&
Gecode::Int::print_view<char, std::char_traits<char>,
Gecode::Int::IntView>(std::basic_ostream<char, std::char_traits<char> >&,
Gecode::Int::IntView const&)in ccJBe0zW.o
      std::basic_ostream<char, std::char_traits<char> >& Gecode::operator<<
<char, std::char_traits<char>, Gecode::IntVar>(std::basic_ostream<char,
std::char_traits<char> >&, Gecode::VarArray<Gecode::IntVar> const&)in
ccJBe0zW.o
      std::basic_ostream<char, std::char_traits<char> >& Gecode::operator<<
<char, std::char_traits<char>, Gecode::IntVar>(std::basic_ostream<char,
std::char_traits<char> >&, Gecode::VarArray<Gecode::IntVar> const&)in
ccJBe0zW.o
  "std::basic_ostream<char, std::char_traits<char> >& std::endl<char,
std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char>
>&)", referenced from:
      SendMoreMoney::print(std::basic_ostream<char, std::char_traits<char>
>&) constin ccJBe0zW.o
  "___dynamic_cast", referenced from:
      Gecode::Gist::Print<SendMoreMoney>::inspect(Gecode::Space const&)in
ccJBe0zW.o
  "___gxx_personality_v0", referenced from:
      std::__verify_grouping(char const*, unsigned long,
std::basic_string<char, std::char_traits<char>, std::allocator<char> >
const&)in ccJBe0zW.o
      ___tcf_0 in ccJBe0zW.o
      _main in ccJBe0zW.o
      operator new(unsigned long, void*)in ccJBe0zW.o
      operator delete(void*, void*)in ccJBe0zW.o
      std::ios_base::width(long)in ccJBe0zW.o
      Gecode::Home::Home(Gecode::Space&, Gecode::Propagator*)in ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::Union::operator()()in ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::Union::min() constin ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::Union::max() constin ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::Union::width() constin ccJBe0zW.o
      Gecode::Int::IntVarImpFwd::IntVarImpFwd(Gecode::Int::IntVarImp
const*)in ccJBe0zW.o
      Gecode::Search::Options::Options()in ccJBe0zW.o
      unsigned long const& std::min<unsigned long>(unsigned long const&,
unsigned long const&)in ccJBe0zW.o
      int const& std::max<int>(int const&, int const&)in ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::Union::operator++()in ccJBe0zW.o
      int const& std::min<int>(int const&, int const&)in ccJBe0zW.o
      Gecode::IntVar::IntVar()in ccJBe0zW.o
      Gecode::IntVar::IntVar(Gecode::IntVar const&)in ccJBe0zW.o

 Gecode::Int::ViewRanges<Gecode::Int::IntView>::ViewRanges(Gecode::Int::IntView
const&)in ccJBe0zW.o
      Gecode::IntVarArray::IntVarArray()in ccJBe0zW.o
      Gecode::Gist::Inspector::Inspector()in ccJBe0zW.o
      void
std::swap<Gecode::Iter::Ranges::Virt::Iterator*>(Gecode::Iter::Ranges::Virt::Iterator*&,
Gecode::Iter::Ranges::Virt::Iterator*&)in ccJBe0zW.o
      Gecode::IntVar::~IntVar()in ccJBe0zW.o
      Gecode::Support::unmark(void*)in ccJBe0zW.o
      Gecode::VarArray<Gecode::IntVar>::operator[](int)in ccJBe0zW.o
      Gecode::ArgArrayBase<int>::operator[](int)in ccJBe0zW.o
      Gecode::ArgArrayBase<Gecode::IntVar>::operator[](int)in ccJBe0zW.o
      Gecode::VarArray<Gecode::IntVar>::operator[](int) constin ccJBe0zW.o
      Gecode::Int::IntVarImp::val() constin ccJBe0zW.o
      Gecode::VarImp<Gecode::Int::IntVarImpConf>::forward() constin
ccJBe0zW.o
      Gecode::SharedHandle::Object::~Object()in ccJBe0zW.o
      Gecode::Choice::~Choice()in ccJBe0zW.o
      Gecode::ChoiceVirtualBase::~ChoiceVirtualBase()in ccJBe0zW.o
      void Gecode::Heap::free<Gecode::IntVar>(Gecode::IntVar*, int)in
ccJBe0zW.o
      void Gecode::Heap::free<int>(int*, int)in ccJBe0zW.o
      Gecode::PrimArgArray<int>::~PrimArgArray()in ccJBe0zW.o
      Gecode::IntArgs::~IntArgs()in ccJBe0zW.o
      void
Gecode::Heap::free<Gecode::Gist::Inspector*>(Gecode::Gist::Inspector**,
int)in ccJBe0zW.o
      void
Gecode::Heap::free<Gecode::Gist::Comparator*>(Gecode::Gist::Comparator**,
int)in ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::Iterator::~Iterator()in ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::Iterator::~Iterator()in ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::Union::~Union()in ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::Union::~Union()in ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::NaryUnion::~NaryUnion()in ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::Inter::~Inter()in ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::Inter::~Inter()in ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::NaryInter::~NaryInter()in ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::NaryInter::~NaryInter()in ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::ComplVal::~ComplVal()in ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::ComplVal::~ComplVal()in ccJBe0zW.o
      Gecode::Search::Stop::~Stop()in ccJBe0zW.o
      Gecode::Search::Stop::~Stop()in ccJBe0zW.o
      Gecode::MemoryExhausted::MemoryExhausted()in ccJBe0zW.o
      Gecode::IntArgs::IntArgs(int)in ccJBe0zW.o
      Gecode::IntVarArgs::IntVarArgs(int)in ccJBe0zW.o
      Gecode::Gist::Inspector**
Gecode::Heap::alloc<Gecode::Gist::Inspector*>(int)in ccJBe0zW.o
      Gecode::Gist::Comparator**
Gecode::Heap::alloc<Gecode::Gist::Comparator*>(int)in ccJBe0zW.o
      Gecode::Gist::Inspector**
Gecode::Heap::realloc<Gecode::Gist::Inspector>(Gecode::Gist::Inspector**,
int, int)in ccJBe0zW.o
      Gecode::Exception::~Exception()in ccJBe0zW.o
      Gecode::MemoryExhausted::~MemoryExhausted()in ccJBe0zW.o
      Gecode::MemoryExhausted::~MemoryExhausted()in ccJBe0zW.o
      Gecode::MemoryManager::alloc(Gecode::SharedMemory*, unsigned long)in
ccJBe0zW.o
      Gecode::IntVar* Gecode::Space::alloc<Gecode::IntVar>(int)in ccJBe0zW.o
      SendMoreMoney::SendMoreMoney(bool, SendMoreMoney&)in ccJBe0zW.o
      Gecode::Gist::Print<SendMoreMoney>::Print(std::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&)in ccJBe0zW.o
      Gecode::Gist::Print<SendMoreMoney>::finalize()     in ccJBe0zW.o
      Gecode::Gist::Print<SendMoreMoney>::name()     in ccJBe0zW.o
      Gecode::Gist::Print<SendMoreMoney>::~Print()in ccJBe0zW.o
      Gecode::Gist::Print<SendMoreMoney>::~Print()in ccJBe0zW.o
      Gecode::Gist::dfs(Gecode::Space*, Gecode::Gist::Options const&)in
ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::ComplVal::operator++()in ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::NaryInter::operator++()in ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::Inter::operator++()in ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::ComplVal::operator()()in ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::NaryInter::operator()()in ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::Inter::operator()()in ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::NaryUnion::operator()()in ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::ComplVal::min() constin ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::NaryInter::min() constin ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::Inter::min() constin ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::NaryUnion::min() constin ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::ComplVal::max() constin ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::NaryInter::max() constin ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::Inter::max() constin ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::NaryUnion::max() constin ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::ComplVal::width() constin ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::NaryInter::width() constin ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::Inter::width() constin ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::NaryUnion::width() constin ccJBe0zW.o
      std::basic_ostream<char, std::char_traits<char> >&
Gecode::Int::print_view<char, std::char_traits<char>,
Gecode::Int::IntView>(std::basic_ostream<char, std::char_traits<char> >&,
Gecode::Int::IntView const&)in ccJBe0zW.o
      std::basic_ostream<char, std::char_traits<char> >&
Gecode::Int::operator<< <char, std::char_traits<char>
>(std::basic_ostream<char, std::char_traits<char> >&, Gecode::Int::IntView
const&)in ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::NaryUnion::operator++()in ccJBe0zW.o
      Gecode::Int::IntView::IntView(Gecode::IntVar const&)in ccJBe0zW.o
      std::basic_ostream<char, std::char_traits<char> >& Gecode::operator<<
<char, std::char_traits<char> >(std::basic_ostream<char,
std::char_traits<char> >&, Gecode::IntVar const&)in ccJBe0zW.o
      std::basic_ostream<char, std::char_traits<char> >& Gecode::operator<<
<char, std::char_traits<char>, Gecode::IntVar>(std::basic_ostream<char,
std::char_traits<char> >&, Gecode::VarArray<Gecode::IntVar> const&)in
ccJBe0zW.o
      SendMoreMoney::print(std::basic_ostream<char, std::char_traits<char>
>&) constin ccJBe0zW.o
      Gecode::Gist::Print<SendMoreMoney>::inspect(Gecode::Space const&)in
ccJBe0zW.o

 Gecode::VarArgArray<Gecode::IntVar>::VarArgArray(Gecode::VarArray<Gecode::IntVar>
const&)in ccJBe0zW.o
      Gecode::IntVarArgs::IntVarArgs(Gecode::VarArray<Gecode::IntVar>
const&)in ccJBe0zW.o
      Gecode::SharedHandle::Object::~Object()in ccJBe0zW.o
      Gecode::DFA::DFAI::~DFAI()in ccJBe0zW.o
      Gecode::DFA::DFAI::~DFAI()in ccJBe0zW.o
      Gecode::SharedHandle::Object::~Object()in ccJBe0zW.o
      Gecode::Choice::~Choice()in ccJBe0zW.o
      Gecode::ChoiceVirtualBase::~ChoiceVirtualBase()in ccJBe0zW.o
      Gecode::Iter::Ranges::Virt::NaryUnion::~NaryUnion()in ccJBe0zW.o
      Gecode::VarArgArray<Gecode::IntVar>::~VarArgArray()in ccJBe0zW.o
      Gecode::IntVarArgs::~IntVarArgs()in ccJBe0zW.o
      SendMoreMoney::SendMoreMoney()in ccJBe0zW.o
      SendMoreMoney::~SendMoreMoney()in ccJBe0zW.o
      SendMoreMoney::~SendMoreMoney()in ccJBe0zW.o
      Gecode::Gist::Options::_I::~_I()in ccJBe0zW.o
      Gecode::Gist::Options::~Options()in ccJBe0zW.o
      SendMoreMoney::copy(bool)  in ccJBe0zW.o
      Gecode::Gist::Options::_I::_I() in ccJBe0zW.o
      Gecode::Gist::Options::Options()in ccJBe0zW.o
      Gecode::Support::DynamicArray<Gecode::Gist::Inspector*,
Gecode::Heap>::resize(int)in ccJBe0zW.o
      Gecode::Support::DynamicArray<Gecode::Gist::Inspector*,
Gecode::Heap>::operator[](int)in ccJBe0zW.o
      __static_initialization_and_destruction_0(int, int)in ccJBe0zW.o
      global constructors keyed to mainin ccJBe0zW.o
      CIE in ccJBe0zW.o
  "___cxa_bad_cast", referenced from:
      Gecode::Gist::Print<SendMoreMoney>::inspect(Gecode::Space const&)in
ccJBe0zW.o
  "std::basic_ios<char, std::char_traits<char>
>::copyfmt(std::basic_ios<char, std::char_traits<char> > const&)",
referenced from:
      std::basic_ostream<char, std::char_traits<char> >&
Gecode::Int::print_view<char, std::char_traits<char>,
Gecode::Int::IntView>(std::basic_ostream<char, std::char_traits<char> >&,
Gecode::Int::IntView const&)in ccJBe0zW.o
      std::basic_ostream<char, std::char_traits<char> >& Gecode::operator<<
<char, std::char_traits<char>, Gecode::IntVar>(std::basic_ostream<char,
std::char_traits<char> >&, Gecode::VarArray<Gecode::IntVar> const&)in
ccJBe0zW.o
  "std::ios_base::Init::~Init()", referenced from:
      ___tcf_0 in ccJBe0zW.o
  "std::basic_ostream<char, std::char_traits<char> >& std::operator<<
<std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char>
>&, char)", referenced from:
      std::basic_ostream<char, std::char_traits<char> >&
Gecode::Int::print_view<char, std::char_traits<char>,
Gecode::Int::IntView>(std::basic_ostream<char, std::char_traits<char> >&,
Gecode::Int::IntView const&)in ccJBe0zW.o
      std::basic_ostream<char, std::char_traits<char> >&
Gecode::Int::print_view<char, std::char_traits<char>,
Gecode::Int::IntView>(std::basic_ostream<char, std::char_traits<char> >&,
Gecode::Int::IntView const&)in ccJBe0zW.o
      std::basic_ostream<char, std::char_traits<char> >&
Gecode::Int::print_view<char, std::char_traits<char>,
Gecode::Int::IntView>(std::basic_ostream<char, std::char_traits<char> >&,
Gecode::Int::IntView const&)in ccJBe0zW.o
      std::basic_ostream<char, std::char_traits<char> >&
Gecode::Int::print_view<char, std::char_traits<char>,
Gecode::Int::IntView>(std::basic_ostream<char, std::char_traits<char> >&,
Gecode::Int::IntView const&)in ccJBe0zW.o
      std::basic_ostream<char, std::char_traits<char> >&
Gecode::Int::print_view<char, std::char_traits<char>,
Gecode::Int::IntView>(std::basic_ostream<char, std::char_traits<char> >&,
Gecode::Int::IntView const&)in ccJBe0zW.o
      std::basic_ostream<char, std::char_traits<char> >& Gecode::operator<<
<char, std::char_traits<char>, Gecode::IntVar>(std::basic_ostream<char,
std::char_traits<char> >&, Gecode::VarArray<Gecode::IntVar> const&)in
ccJBe0zW.o
      std::basic_ostream<char, std::char_traits<char> >& Gecode::operator<<
<char, std::char_traits<char>, Gecode::IntVar>(std::basic_ostream<char,
std::char_traits<char> >&, Gecode::VarArray<Gecode::IntVar> const&)in
ccJBe0zW.o
  "std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::operator[](unsigned long) const", referenced from:
      std::__verify_grouping(char const*, unsigned long,
std::basic_string<char, std::char_traits<char>, std::allocator<char> >
const&)in ccJBe0zW.o
      std::__verify_grouping(char const*, unsigned long,
std::basic_string<char, std::char_traits<char>, std::allocator<char> >
const&)in ccJBe0zW.o
      std::__verify_grouping(char const*, unsigned long,
std::basic_string<char, std::char_traits<char>, std::allocator<char> >
const&)in ccJBe0zW.o
  "std::allocator<char>::allocator()", referenced from:
      _main in ccJBe0zW.o
  "___cxa_pure_virtual", referenced from:
      vtable for Gecode::Search::Stopin ccJBe0zW.o
      vtable for Gecode::Iter::Ranges::Virt::Iteratorin ccJBe0zW.o
      vtable for Gecode::Iter::Ranges::Virt::Iteratorin ccJBe0zW.o
      vtable for Gecode::Iter::Ranges::Virt::Iteratorin ccJBe0zW.o
      vtable for Gecode::Iter::Ranges::Virt::Iteratorin ccJBe0zW.o
      vtable for Gecode::Iter::Ranges::Virt::Iteratorin ccJBe0zW.o
      vtable for Gecode::ChoiceVirtualBasein ccJBe0zW.o
      vtable for Gecode::ChoiceVirtualBasein ccJBe0zW.o
      vtable for Gecode::Choicein ccJBe0zW.o
      vtable for Gecode::SharedHandle::Objectin ccJBe0zW.o
  "std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::basic_string(char const*, std::allocator<char> const&)", referenced from:
      _main in ccJBe0zW.o
  "std::basic_ostream<char, std::char_traits<char>
>::operator<<(std::basic_ostream<char, std::char_traits<char> >&
(*)(std::basic_ostream<char, std::char_traits<char> >&))", referenced from:
      SendMoreMoney::print(std::basic_ostream<char, std::char_traits<char>
>&) constin ccJBe0zW.o
  "std::basic_ostream<char, std::char_traits<char> >::operator<<(int)",
referenced from:
      std::basic_ostream<char, std::char_traits<char> >&
Gecode::Int::print_view<char, std::char_traits<char>,
Gecode::Int::IntView>(std::basic_ostream<char, std::char_traits<char> >&,
Gecode::Int::IntView const&)in ccJBe0zW.o
      std::basic_ostream<char, std::char_traits<char> >&
Gecode::Int::print_view<char, std::char_traits<char>,
Gecode::Int::IntView>(std::basic_ostream<char, std::char_traits<char> >&,
Gecode::Int::IntView const&)in ccJBe0zW.o
      std::basic_ostream<char, std::char_traits<char> >&
Gecode::Int::print_view<char, std::char_traits<char>,
Gecode::Int::IntView>(std::basic_ostream<char, std::char_traits<char> >&,
Gecode::Int::IntView const&)in ccJBe0zW.o
      std::basic_ostream<char, std::char_traits<char> >&
Gecode::Int::print_view<char, std::char_traits<char>,
Gecode::Int::IntView>(std::basic_ostream<char, std::char_traits<char> >&,
Gecode::Int::IntView const&)in ccJBe0zW.o
      std::basic_ostream<char, std::char_traits<char> >&
Gecode::Int::print_view<char, std::char_traits<char>,
Gecode::Int::IntView>(std::basic_ostream<char, std::char_traits<char> >&,
Gecode::Int::IntView const&)in ccJBe0zW.o
      std::basic_ostream<char, std::char_traits<char> >&
Gecode::Int::print_view<char, std::char_traits<char>,
Gecode::Int::IntView>(std::basic_ostream<char, std::char_traits<char> >&,
Gecode::Int::IntView const&)in ccJBe0zW.o
  "std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::size() const", referenced from:
      std::__verify_grouping(char const*, unsigned long,
std::basic_string<char, std::char_traits<char>, std::allocator<char> >
const&)in ccJBe0zW.o
  "std::basic_ostringstream<char, std::char_traits<char>,
std::allocator<char> >::~basic_ostringstream()", referenced from:
      std::basic_ostream<char, std::char_traits<char> >&
Gecode::Int::print_view<char, std::char_traits<char>,
Gecode::Int::IntView>(std::basic_ostream<char, std::char_traits<char> >&,
Gecode::Int::IntView const&)in ccJBe0zW.o
      std::basic_ostream<char, std::char_traits<char> >&
Gecode::Int::print_view<char, std::char_traits<char>,
Gecode::Int::IntView>(std::basic_ostream<char, std::char_traits<char> >&,
Gecode::Int::IntView const&)in ccJBe0zW.o
      std::basic_ostream<char, std::char_traits<char> >& Gecode::operator<<
<char, std::char_traits<char>, Gecode::IntVar>(std::basic_ostream<char,
std::char_traits<char> >&, Gecode::VarArray<Gecode::IntVar> const&)in
ccJBe0zW.o
      std::basic_ostream<char, std::char_traits<char> >& Gecode::operator<<
<char, std::char_traits<char>, Gecode::IntVar>(std::basic_ostream<char,
std::char_traits<char> >&, Gecode::VarArray<Gecode::IntVar> const&)in
ccJBe0zW.o
  "std::basic_ostream<char, std::char_traits<char> >& std::operator<< <char,
std::char_traits<char>, std::allocator<char> >(std::basic_ostream<char,
std::char_traits<char> >&, std::basic_string<char, std::char_traits<char>,
std::allocator<char> > const&)", referenced from:
      std::basic_ostream<char, std::char_traits<char> >&
Gecode::Int::print_view<char, std::char_traits<char>,
Gecode::Int::IntView>(std::basic_ostream<char, std::char_traits<char> >&,
Gecode::Int::IntView const&)in ccJBe0zW.o
      std::basic_ostream<char, std::char_traits<char> >& Gecode::operator<<
<char, std::char_traits<char>, Gecode::IntVar>(std::basic_ostream<char,
std::char_traits<char> >&, Gecode::VarArray<Gecode::IntVar> const&)in
ccJBe0zW.o
  "std::basic_ostream<char, std::char_traits<char> >& std::operator<<
<std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char>
>&, char const*)", referenced from:
      std::basic_ostream<char, std::char_traits<char> >&
Gecode::Int::print_view<char, std::char_traits<char>,
Gecode::Int::IntView>(std::basic_ostream<char, std::char_traits<char> >&,
Gecode::Int::IntView const&)in ccJBe0zW.o
      std::basic_ostream<char, std::char_traits<char> >&
Gecode::Int::print_view<char, std::char_traits<char>,
Gecode::Int::IntView>(std::basic_ostream<char, std::char_traits<char> >&,
Gecode::Int::IntView const&)in ccJBe0zW.o
      std::basic_ostream<char, std::char_traits<char> >& Gecode::operator<<
<char, std::char_traits<char>, Gecode::IntVar>(std::basic_ostream<char,
std::char_traits<char> >&, Gecode::VarArray<Gecode::IntVar> const&)in
ccJBe0zW.o
  "vtable for __cxxabiv1::__class_type_info", referenced from:
      typeinfo for Gecode::Search::Stopin ccJBe0zW.o
      typeinfo for Gecode::Iter::Ranges::Virt::Iteratorin ccJBe0zW.o
      typeinfo for Gecode::ChoiceVirtualBasein ccJBe0zW.o
      typeinfo for Gecode::Choicein ccJBe0zW.o
      typeinfo for Gecode::SharedHandle::Objectin ccJBe0zW.o
      typeinfo for Gecode::Iter::Ranges::MinMaxin ccJBe0zW.o
  "std::allocator<char>::~allocator()", referenced from:
      _main in ccJBe0zW.o
      _main in ccJBe0zW.o
  "std::basic_ostringstream<char, std::char_traits<char>,
std::allocator<char> >::basic_ostringstream(std::_Ios_Openmode)", referenced
from:
      std::basic_ostream<char, std::char_traits<char> >&
Gecode::Int::print_view<char, std::char_traits<char>,
Gecode::Int::IntView>(std::basic_ostream<char, std::char_traits<char> >&,
Gecode::Int::IntView const&)in ccJBe0zW.o
      std::basic_ostream<char, std::char_traits<char> >& Gecode::operator<<
<char, std::char_traits<char>, Gecode::IntVar>(std::basic_ostream<char,
std::char_traits<char> >&, Gecode::VarArray<Gecode::IntVar> const&)in
ccJBe0zW.o
  "vtable for __cxxabiv1::__si_class_type_info", referenced from:
      typeinfo for Gecode::DFA::DFAIin ccJBe0zW.o
      typeinfo for Gecode::MemoryExhaustedin ccJBe0zW.o
      typeinfo for SendMoreMoneyin ccJBe0zW.o
  "vtable for __cxxabiv1::__vmi_class_type_info", referenced from:
      typeinfo for Gecode::Iter::Ranges::Virt::ComplValin ccJBe0zW.o
      typeinfo for Gecode::Iter::Ranges::Virt::NaryInterin ccJBe0zW.o
      typeinfo for Gecode::Iter::Ranges::Virt::Interin ccJBe0zW.o
      typeinfo for Gecode::Iter::Ranges::Virt::NaryUnionin ccJBe0zW.o
      typeinfo for Gecode::Iter::Ranges::Virt::Unionin ccJBe0zW.o
      typeinfo for Gecode::Gist::Print<SendMoreMoney>in ccJBe0zW.o
  "std::ios_base::Init::Init()", referenced from:
      __static_initialization_and_destruction_0(int, int)in ccJBe0zW.o
  "___cxa_allocate_exception", referenced from:
      _main in ccJBe0zW.o
      Gecode::IntArgs::IntArgs(int)in ccJBe0zW.o
      Gecode::IntVarArgs::IntVarArgs(int)in ccJBe0zW.o
      Gecode::Gist::Inspector**
Gecode::Heap::alloc<Gecode::Gist::Inspector*>(int)in ccJBe0zW.o
      Gecode::Gist::Comparator**
Gecode::Heap::alloc<Gecode::Gist::Comparator*>(int)in ccJBe0zW.o
      Gecode::Gist::Inspector**
Gecode::Heap::realloc<Gecode::Gist::Inspector>(Gecode::Gist::Inspector**,
int, int)in ccJBe0zW.o

 Gecode::VarArgArray<Gecode::IntVar>::VarArgArray(Gecode::VarArray<Gecode::IntVar>
const&)in ccJBe0zW.o
      SendMoreMoney::copy(bool)  in ccJBe0zW.o
      Gecode::Gist::Options::_I::_I() in ccJBe0zW.o
      Gecode::Gist::Options::_I::_I() in ccJBe0zW.o
      Gecode::Gist::Options::_I::_I() in ccJBe0zW.o
      Gecode::Gist::Options::_I::_I() in ccJBe0zW.o
      Gecode::Support::DynamicArray<Gecode::Gist::Inspector*,
Gecode::Heap>::resize(int)in ccJBe0zW.o
  "std::exception::~exception()", referenced from:
      Gecode::Exception::~Exception()in ccJBe0zW.o
  "___cxa_throw", referenced from:
      _main in ccJBe0zW.o
      Gecode::IntArgs::IntArgs(int)in ccJBe0zW.o
      Gecode::IntVarArgs::IntVarArgs(int)in ccJBe0zW.o
      Gecode::Gist::Inspector**
Gecode::Heap::alloc<Gecode::Gist::Inspector*>(int)in ccJBe0zW.o
      Gecode::Gist::Comparator**
Gecode::Heap::alloc<Gecode::Gist::Comparator*>(int)in ccJBe0zW.o
      Gecode::Gist::Inspector**
Gecode::Heap::realloc<Gecode::Gist::Inspector>(Gecode::Gist::Inspector**,
int, int)in ccJBe0zW.o

 Gecode::VarArgArray<Gecode::IntVar>::VarArgArray(Gecode::VarArray<Gecode::IntVar>
const&)in ccJBe0zW.o
      SendMoreMoney::copy(bool)  in ccJBe0zW.o
      Gecode::Gist::Options::_I::_I() in ccJBe0zW.o
      Gecode::Gist::Options::_I::_I() in ccJBe0zW.o
      Gecode::Gist::Options::_I::_I() in ccJBe0zW.o
      Gecode::Gist::Options::_I::_I() in ccJBe0zW.o
      Gecode::Support::DynamicArray<Gecode::Gist::Inspector*,
Gecode::Heap>::resize(int)in ccJBe0zW.o
  "std::basic_ostringstream<char, std::char_traits<char>,
std::allocator<char> >::str() const", referenced from:
      std::basic_ostream<char, std::char_traits<char> >&
Gecode::Int::print_view<char, std::char_traits<char>,
Gecode::Int::IntView>(std::basic_ostream<char, std::char_traits<char> >&,
Gecode::Int::IntView const&)in ccJBe0zW.o
      std::basic_ostream<char, std::char_traits<char> >& Gecode::operator<<
<char, std::char_traits<char>, Gecode::IntVar>(std::basic_ostream<char,
std::char_traits<char> >&, Gecode::VarArray<Gecode::IntVar> const&)in
ccJBe0zW.o
ld: symbol(s) not found
collect2: ld returned 1 exit status


sample.cpp source I used

/*
 *  Authors:
 *    Christian Schulte <schulte at gecode.org>
 *
 *  Copyright:
 *    Christian Schulte, 2008-2010
 *
 *  Permission is hereby granted, free of charge, to any person obtaining
 *  a copy of this software, to deal in the software without restriction,
 *  including without limitation the rights to use, copy, modify, merge,
 *  publish, distribute, sublicense, and/or sell copies of the software,
 *  and to permit persons to whom the software is furnished to do so,
subject
 *  to the following conditions:
 *
 *  The above copyright notice and this permission notice shall be
 *  included in all copies or substantial portions of the software.
 *
 *  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
 *  EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
 *  MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
 *  NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
 *  LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
 *  OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
 *  WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 *
 */

#include <gecode/int.hh>
#include <gecode/gist.hh>

using namespace Gecode;

class SendMoreMoney : public Space {
protected:
  IntVarArray l;
public:
  SendMoreMoney(void) : l(*this, 8, 0, 9) {
    IntVar s(l[0]), e(l[1]), n(l[2]), d(l[3]),
           m(l[4]), o(l[5]), r(l[6]), y(l[7]);
    rel(*this, s, IRT_NQ, 0);
    rel(*this, m, IRT_NQ, 0);
    distinct(*this, l);
    IntArgs c(4+4+5); IntVarArgs x(4+4+5);
    c[0]=1000; c[1]=100; c[2]=10; c[3]=1;
    x[0]=s;    x[1]=e;   x[2]=n;  x[3]=d;
    c[4]=1000; c[5]=100; c[6]=10; c[7]=1;
    x[4]=m;    x[5]=o;   x[6]=r;  x[7]=e;
    c[8]=-10000; c[9]=-1000; c[10]=-100; c[11]=-10; c[12]=-1;
    x[8]=m;      x[9]=o;     x[10]=n;    x[11]=e;   x[12]=y;
    linear(*this, c, x, IRT_EQ, 0);
    branch(*this, l, INT_VAR_SIZE_MIN, INT_VAL_MIN);
  }
  SendMoreMoney(bool share, SendMoreMoney& s) : Space(share, s) {
    l.update(*this, share, s.l);
  }
  virtual Space* copy(bool share) {
    return new SendMoreMoney(share,*this);
  }
  void print(std::ostream& os) const {
    os << l << std::endl;
  }
};

int main(int argc, char* argv[]) {
  SendMoreMoney* m = new SendMoreMoney;
  Gist::Print<SendMoreMoney> p("Print solution");
  Gist::Options o;
  o.inspect.click(&p);
  Gist::dfs(m,o);
  delete m;
  return 0;
}


Thanks,
M
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.gecode.org/pipermail/users/attachments/20100903/f237a45e/attachment-0001.htm>


More information about the users mailing list