2015-09-08 3 views
-1

Когда я компилирую глюкометр SAT solver на Mac, я получаю следующие ошибки времени компиляции при компиляции глюкозы 3.0. Как избежать этих ошибок?Как скомпилировать глюкометр SAT solver на Mac?

~/acl2/glucose-3.0/simp$ make 
Making dependencies 
Compiling: /Users/me/acl2/glucose-3.0/simp/Main.o 
In file included from /Users/me/acl2/glucose-3.0/simp/Main.cc:39: 
In file included from /Users/me/acl2/glucose-3.0/simp/../core/Dimacs.h:27: 
/Users/me/acl2/glucose-3.0/simp/../core/SolverTypes.h:58:16: error: 
     friend declaration specifying a default argument must be a definition 
    friend Lit mkLit(Var var, bool sign = false); 
      ^
<snip>                  
6 errors generated. 
make: *** [/Users/me/acl2/glucose-3.0/simp/Main.o] Error 1 
~/acl2/glucose-3.0/simp$ 

ответ

0

Заслуга Marijn Хёль для этого решения:

Изменить исходную глюкозу кода для размещения следующих изменений:

bash$ diff SolverTypes.h 
~/Downloads/glucose-3.0/core/SolverTypes.h 
58c58 
<  // friend Lit mkLit(Var var, bool sign = false); 
--- 
>  friend Lit mkLit(Var var, bool sign = false); 
66c66 
< inline Lit mkLit  (Var var, bool sign = false) { Lit p; p.x = 
var + var + (int)sign; return p; } 
--- 
> inline Lit mkLit  (Var var, bool sign) { Lit p; p.x = var + var + (int)sign; return p; } 

Верхних (<) является версией Mac, в то время как bottom (>) является источником по умолчанию.

Смежные вопросы