MacRuby 0.10 HotCocoa 不支持的文件格式,不是正在链接的体系结构 (i386)

发布于 2024-11-11 15:42:14 字数 1270 浏览 4 评论 0原文

我已经安装了 MacRuby(通过 rvm):

$ ruby -v
MacRuby 0.10 (ruby 1.9.2) [universal-darwin10.0, x86_64]

和 LLVM(通过 homebrew):

$ llvmc --version
Low Level Virtual Machine (http://llvm.org/):
llvm version 2.9
Optimized build.
Built Jun  3 2011 (10:06:35).
Host: x86_64-apple-darwin10
Host CPU: corei7

Registered Targets:
(none)

当我运行 rake 时,我收到错误:

$ rake
(in /Users/briankierstead/dev/kci/macruby/hourz)
ld: warning: in /Library/Frameworks//MacRuby.framework/MacRuby, file was built for
 unsupported file format which is not the architecture being linked (i386)
Undefined symbols for architecture i386:
"_macruby_main", referenced from:
  _main in ccvGpB6J.o
ld: symbol(s) not found for architecture i386
collect2: ld returned 1 exit status
lipo: can't open input file: /var/folders/qm/qm1gYJL6Fa4uPhnq239pak+++TI/-Tmp-//ccS18qN4.out (No such file or directory)

不想想要运行 xcode4,它允许您指定 x86_64 作为输出。

我该如何解决这个问题?看起来链中的某个地方正在指定 32 位。我尝试使用标志进行编译,并将 rake 运行为:

env UNIVERSAL=1 UNIVERSAL_ARCH="x86_64" ENABLE_OPTIMIZED=1

RC_ARCHS=x86_64 rake

但这些都没有什么区别。我得到同样的错误。

我使用的是 Snow Leopard - 10.6.7。

I've installed MacRuby (via rvm):

$ ruby -v
MacRuby 0.10 (ruby 1.9.2) [universal-darwin10.0, x86_64]

And LLVM (via homebrew):

$ llvmc --version
Low Level Virtual Machine (http://llvm.org/):
llvm version 2.9
Optimized build.
Built Jun  3 2011 (10:06:35).
Host: x86_64-apple-darwin10
Host CPU: corei7

Registered Targets:
(none)

When I run rake, I get an error:

$ rake
(in /Users/briankierstead/dev/kci/macruby/hourz)
ld: warning: in /Library/Frameworks//MacRuby.framework/MacRuby, file was built for
 unsupported file format which is not the architecture being linked (i386)
Undefined symbols for architecture i386:
"_macruby_main", referenced from:
  _main in ccvGpB6J.o
ld: symbol(s) not found for architecture i386
collect2: ld returned 1 exit status
lipo: can't open input file: /var/folders/qm/qm1gYJL6Fa4uPhnq239pak+++TI/-Tmp-//ccS18qN4.out (No such file or directory)

I don't want to run xcode4, which allows you specify x86_64 as the output.

How can I resolve this issue? It looks like somewhere in the chain, 32-bit is being specified. I've tried compiling with flags, and running rake as:

env UNIVERSAL=1 UNIVERSAL_ARCH="x86_64" ENABLE_OPTIMIZED=1

and

RC_ARCHS=x86_64 rake

But none of these makes a difference. I get the same error.

I'm on Snow Leopard - 10.6.7.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

扎心 2024-11-18 15:42:14

使用此 repo 中的 hotcocoa 可以解决该问题。发布的版本已经过时并且忽略了架构。

并不理想,但至少在发布的版本跟上之前它是有效的。

感谢 @watson1978

这有效,但引起了另一个错误: LSOpenURLsWithRole() 失败,错误 -10810

我必须安装 BridgeSupport 然后一切正常。

Using hotcocoa from this repo solves the problem. The published version is outdated and ignores architecture.

Not ideal, but at least it works until the published version catches up.

Thanks goes to @watson1978

This worked, but gave rise to another error: LSOpenURLsWithRole() failed with error -10810

I had to install BridgeSupport and then everything worked fine.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文