[gecode-users] Problem linking Gecode 2.0.1 libreries
Raffaele Cipriano
cipriano at dimi.uniud.it
Thu Feb 28 16:16:58 CET 2008
Dear GECODE developers and users,
I have sucessfully installed GECODE 2.0.1 on my PC (cygwin on Windows XP
32bit), and I'm trying to compile an example, the queens.cc file...
I have some problems linking the libraries (compiling the file is ok).
I've also installed GECODE 2.0.1 on a cluster x86_64 with Linux CentOS
v.4.3 and 2.6.9-34.ELsmp CentOS Kernel, and I get the same problem.
I get this message
make -k all
Building target: Queens.exe
Invoking: GCC C++ Linker
g++ -L"C:\Programmi\gecode-2.0.1" -o"Queens.exe" ./queens.o
-lgecodeminimodel -lgecodeint -lgecodekernel -lgecodesupport -lgecodesearch
./queens.o: In function `main':
/cygdrive/c/Programmi/gecode-1.3.1/QueensGecode2/Debug/../queens.cc:125:
undefined reference to `SizeOptions::SizeOptions(char const*)'
/cygdrive/c/Programmi/gecode-1.3.1/QueensGecode2/Debug/../queens.cc:135:
undefined reference to `SizeOptions::parse(int&, char**)'
./queens.o: In function
`_ZN6Gecode7Support6PQueueIPNS_4Iter6Ranges4Virt8IteratorENS4_9NaryUnion15RangeUnionOrderEED1Ev':
/cygdrive/c/Programmi/gecode-1.3.1/QueensGecode2/Debug/../queens.cc:(.text$_ZN11SizeOptionsD1Ev[SizeOptions::~SizeOptions()]+0xb):
undefined reference to `vtable for SizeOptions'
/cygdrive/c/Programmi/gecode-1.3.1/QueensGecode2/Debug/../queens.cc:(.text$_ZN7OptionsD2Ev[Options::~Options()]+0x3d):
undefined reference to `vtable for Options'
./queens.o: In function `main':
/cygdrive/c/Programmi/gecode-1.3.1/QueensGecode2/Debug/../queens.cc:124:
undefined reference to `StringOption::~StringOption()'
/cygdrive/c/Programmi/gecode-1.3.1/QueensGecode2/Debug/../queens.cc:124:
undefined reference to `StringOption::~StringOption()'
/cygdrive/c/Programmi/gecode-1.3.1/QueensGecode2/Debug/../queens.cc:137:
undefined reference to `StringOption::~StringOption()'
/cygdrive/c/Programmi/gecode-1.3.1/QueensGecode2/Debug/../queens.cc:137:
undefined reference to `StringOption::~StringOption()'
/cygdrive/c/Programmi/gecode-1.3.1/QueensGecode2/Debug/../queens.cc:137:
undefined reference to `StringOption::~StringOption()'
./queens.o:/cygdrive/c/Programmi/gecode-1.3.1/QueensGecode2/Debug/../queens.cc:138:
more undefined references to `StringOption::~StringOption()' follow
./queens.o: In function
`_ZN6Gecode7Support6PQueueIPNS_4Iter6Ranges4Virt8IteratorENS4_9NaryUnion15RangeUnionOrderEED1Ev':
/cygdrive/c/Programmi/gecode-1.3.1/QueensGecode2/Debug/../queens.cc:(.text$_ZN17UnsignedIntOptionD1Ev[UnsignedIntOption::~UnsignedIntOption()]+0xb):
undefined reference to `vtable for UnsignedIntOption'
/cygdrive/c/Programmi/gecode-1.3.1/QueensGecode2/Debug/../queens.cc:(.text$_ZN7Options11propagationEiPKcS1_[Options::propagation(int,
char const*, char const*)]+0x25): undefined reference to
`StringOption::add(int, char const*, char const*)'
./queens.o: In function `_GLOBAL__D_main':
/cygdrive/c/Programmi/gecode-1.3.1/QueensGecode2/Debug/../queens.cc:80:
undefined reference to `am(double*, int)'
/cygdrive/c/Programmi/gecode-1.3.1/QueensGecode2/Debug/../queens.cc:80:
undefined reference to `dev(double*, int)'
collect2: ld returned 1 exit status
make: *** [Queens.exe] Error 1
make: Target `all' not remade because of errors.
Build complete for project QueensGecode2
I'm sure that the libraries are correctly referred (if I don't use one
or more -l<library> option I get a lot of undefined references)..
It seems there's some trouble with the class Options or SizeOptions and
with the distinct contraint (line 80 is distinct(this, q, opt.icl()); )
Could you help me?
Thank you
Raffaele Cipriano
More information about the gecode-users
mailing list