2010-11-11 29 views
4

J'ai besoin de compiler SBCL à partir de la source et activer le thread sur mon MacBook Mac OS X.Compiler SBCL à partir de la source sur Mac OS X

Je l'ai fait ce qui suit:

  1. Téléchargé sbcl-1.0.29.54.rc1 et décompressé à la racine de mon disque dur (je pourrais le mettre ailleurs si ce serait mieux).
  2. Invoqué

    sh make.sh 
    

Il fait beaucoup de choses (il ne manque pas immédiatement), mais l'échec se produit:

make: *** [backtrace.o] Error 1 

Je ne peux pas vraiment dire quel est le problème de la sortie précédente:

; /sbcl-1.0.29.54.rc1/obj/from-host/src/compiler/generic/genesis.lisp-obj-tmp written 
; compilation finished in 0:00:02.281 
STYLE-WARNING: redefining FOP-MAYBE-COLD-LOAD in DEFUN 
T 
* 
beginning GENESIS, creating headers in "src/runtime/genesis" 
NIL 
* 
real 1m24.729s 
user 1m17.343s 
sys 0m5.793s 
//entering make-target-1.sh 
//building runtime system and symbol table file 
rm -f *.[do] sbcl sbcl.nm sbcl.h core *.tmp 
echo '#include "genesis/config.h"' >sbcl.h 
echo '#include "genesis/constants.h"' >>sbcl.h 
In file included from darwin-os.c:21: 
/usr/include/ucontext.h:42:2: error: #error ucontext routines are deprecated, 
     and require _XOPEN_SOURCE to be defined 
gcc -g -Wall -O2 -fdollars-in-identifiers -mmacosx-version-min=10.4 -I. -no-cpp-precomp -c -o alloc.o alloc.c 
In file included from alloc.c:21: 
runtime.h: In function 'CONS': 
runtime.h:151: warning: cast to pointer from integer of different size 
runtime.h: In function 'SYMBOL': 
runtime.h:157: warning: cast to pointer from integer of different size 
runtime.h: In function 'FDEFN': 
runtime.h:163: warning: cast to pointer from integer of different size 
gcc -g -Wall -O2 -fdollars-in-identifiers -mmacosx-version-min=10.4 -I. -no-cpp-precomp -c -o backtrace.o backtrace.c 
In file included from backtrace.c:19: 
runtime.h: In function 'CONS': 
runtime.h:151: warning: cast to pointer from integer of different size 
runtime.h: In function 'SYMBOL': 
runtime.h:157: warning: cast to pointer from integer of different size 
runtime.h: In function 'FDEFN': 
runtime.h:163: warning: cast to pointer from integer of different size 
/var/folders/T2/T2z5uzvpHnmC3o+vJVluoU+++TI/-Tmp-//ccEobrpp.s:851:suffix or operands invalid for `mov' 
make: *** [backtrace.o] Error 1 

Quelqu'un peut-il me dire ce que je dois faire pour résoudre ce problème?

Répondre

4

il y a un patch situé at this bug report. Essayez de l'appliquer et de la reconstruire proprement (nettoyez & & ...) puis voyez si le problème disparaît.

+0

et raison pour laquelle vous compilez un vieux sbcl, cependant? ce correctif est dans les versions plus récentes. – krzysz00

2

Cette version est assez ancienne. SBCL est jusqu'à 1.0.44. 1.0.44 construit bien sur Mac OS X.