[gecode-users] Installation with Intel Compiler 64 bits

Simon Boivin simon.boivin at polymtl.ca
Thu Jul 19 17:19:29 CEST 2007


We had some problems to install Gecode on our new parallel computer 
with  Intel Compiler 64 bits which crash when compiling  the library  :

icpc -I. -I. -DNDEBUG -fPIC -ggdb -O3 -fno-strict-aliasing  -DNDEBUG 
-fPIC -ggdb
-O3 -fno-strict-aliasing   \
-c -o gecode/int/var/imp.o  gecode/int/var/imp.cc
../gecode/kernel/core.icc(1605): error #1556: conversion from inaccessible
base class "Gecode::ActorLink" is not allowed
       t[0] = static_cast<Propagator*>(f[0]->prev());; 

which is an internal error of the compiler.  According to the c++ expert 
from Intel the program is not c++ standard conforming. 

So, to install the library we must modified the class Space as :

--- ./gecode/kernel/core.icc    2007-06-12 17:14:48.000000000 +0200
+++ ./gecode/kernel/core.icc-save       2007-06-12 17:14:43.000000000 +0200
@@ -402,7 +402,7 @@
   * \brief Base-class for both propagators and branchings
   * \ingroup TaskActor
   */
-  class Actor : public ActorDeleteLink {
+  class Actor : private ActorDeleteLink {
    friend class Space;
    template <VarTypeId VTI, PropCond PC, class MED> friend class Variable;
  public:

If someone have to install Gecode onto this architecture it could be 
usefull.


Simon Boivin
---------------------------------------
PhD Candidate
Departement de Génie Informatique
École Polytechnique de Monréal






More information about the gecode-users mailing list