首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在没有Gforth的情况下编译Gforth?

在没有Gforth的情况下编译Gforth?
EN

Stack Overflow用户
提问于 2010-03-05 11:21:05
回答 1查看 1.1K关注 0票数 4

当我尝试编译Gforth 0.7.0时,我得到了以下错误:

代码语言:javascript
复制
$ ./configure
$ make
#compiling… 
Undefined symbols:
  "_main", referenced from:
      start in crt1.10.6.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
make[3]: *** [gforth-ll] Error 1
./preforth -p ".:~+:." -e 's" mach16b.fs"' ./kernel/main.fs -e "save-cross kernl16b.fi- /usr/local/bin/gforth-0.7.0 bye"
You need to configure with a gforth in $PATH to build this part
make[3]: *** [kernl16b.fi-] Error 1
make[2]: *** [gforth-ll] Error 2
make[1]: *** [optgforth] Error 2
make: *** [gforth] Error 2
[22:16:01] gforth-0.7.0$ 

当通过端口安装时,我得到了相同的错误。我想象的问题是Gforth是用Forth编写的,至少部分是用Forth编写的,那么我如何在不安装它的情况下安装它(或者是其他问题)?

我使用的是Mac OS 10.6。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-03-05 11:38:02

在配置过程中,我收到了以下消息:

代码语言:javascript
复制
...
checking how to invoke m4... m4 -s
checking for gforth... echo "You need to configure with a gforth in \$PATH to build this part" && false
checking for ./arch/386/asm.fs... yes
...

我还发现,当我使用普通的GCC (64位模式)构建时,在编译过程中发生了可怕的错误(我假设是在汇编程序插入中抱怨指定的寄存器不正确)。但当我使用以下命令重新配置时:

代码语言:javascript
复制
CC="gcc -m32" ./configure --prefix=$HOME

我仍然收到关于'gforth‘的警告,但是其余的编译工作成功了。安装出现了关于'chcon‘不工作的警告,但该错误被忽略了。

安装完成后,我可以输入:

代码语言:javascript
复制
Osiris-2 JL: gforth
Gforth 0.7.0, Copyright (C) 1995-2008 Free Software Foundation, Inc.
Gforth comes with ABSOLUTELY NO WARRANTY; for details type `license'
Type `bye' to exit
2 3 +  ok
. 5  ok

Osiris-2 JL: uname -a
Darwin Osiris-2.local 10.2.0 Darwin Kernel Version 10.2.0: Tue Nov  3 10:37:10 PST 2009; root:xnu-1486.2.11~1/RELEASE_I386 i386
Osiris-2 JL:
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2384366

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档