在Mac OS X上从源代码编译SBCL(Compiling SBCL from source on Mac OS X)

编程入门 行业动态 更新时间:2024-10-28 00:19:12
在Mac OS X上从源代码编译SBCL(Compiling SBCL from source on Mac OS X)

我需要从源代码编译SBCL并在我的Mac OS X MacBook上启用线程。

我做了以下事情:

下载sbcl-1.0.29.54.rc1并将其解压缩到我的硬盘驱动器的根目录(我可以将它放在其他地方,如果那会更好)。

调用

sh make.sh

它做了很多事情(它不会立即失败),但随后发生以下故障:

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

我无法确定前面输出的问题是什么:

; /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

谁能告诉我我需要做些什么来解决这个问题?

I need to compile SBCL from source and enable threading on my Mac OS X MacBook.

I've done the following:

Downloaded sbcl-1.0.29.54.rc1 and unzipped it to the root of my hard drive (I could put it somewhere else if that would be better).

Invoked

sh make.sh

It does a lot of stuff (it doesn't fail immediately), but then the following failure occurs:

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

I can't really tell what the problem is from the preceding output:

; /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

Can anyone tell me what I need to do to fix this?

最满意答案

这个错误报告中有一个补丁。 尝试应用它并干净地重建(使干净&& ...)然后看看问题是否消失。

there is a patch located at this bug report . Try applying it and rebuilding cleanly (make clean && ...) then see if the problem goes away.

更多推荐

本文发布于:2023-08-05 00:27:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1423264.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:源代码   OS   Mac   source   Compiling

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!