3

我正在尝试在 OSX Mountain Lion 下的 Mac 上从 nodejs 运行“dali”一个 highcharts 导出器

我收到以下错误:

module.js:485
    process.dlopen(filename, module.exports);
      ^
Error: dlopen(/Users/greg/node_modules/daemon/lib/daemon.v0.8.8.node, 1): no suitable image found.  Did find:
/Users/greg/node_modules/daemon/lib/daemon.v0.8.8.node: mach-o, but wrong architecture
at Object.Module._extensions..node (module.js:485:11)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.require (module.js:362:17)
at require (module.js:378:17)
at Object.<anonymous> (/Users/greg/node_modules/daemon/lib/daemon.js:12:11)
at Module._compile (module.js:449:26)
at Object.Module._extensions..js (module.js:467:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)

关键部分是:“错误的架构”

如果我运行:

lipo -info /Users/greg/node_modules/daemon/lib/daemon.v0.8.8.node

它返回:

Non-fat file: /Users/greg/node_modules/daemon/lib/daemon.v0.8.8.node is architecture: i386

我猜需要 x64 版本。

如何获取并安装此库的 64 位版本?

4

1 回答 1

0

我猜这个对话发生在大约一个月前左右。在运行用 C++ 编写的 nodejs 插件时,我遇到了与原始海报相同的问题。

但是,lipo 用于通用文件格式以创建单个体系结构文件。我很确定消息“非胖文件...”是说该文件不是通用(胖)文件格式。由于 lipo 只接受 fat 文件,因此 lipo 对文件没有任何工作要做。

我已经深入研究了 mach-o 二进制文件并查看了标题。该文件被标记为 a mach bundle,这不是我所期望的。

我通过 NodeJS node-waf 程序使用 wscript 构建文件构建了我的文件。目前,我的问题还没有解决。我对 NodeJS 和使用 WAF wscript 文件进行构建都是新手。

于 2012-10-03T21:34:43.000 回答