2010-07-29 153 views
3

我试图在Windows XP上使用Cygwin在Ryans指令here上构建node.js(是的,这很痛苦,谢谢。)。在Cygwin上编译node.js

可悲的是调用从节点源目录“的./configure” barfs了这个:

$ ./configure 
/home/LWE/sources/node.js/wscript: error: Traceback (most recent call last): 
    File "/home/LWE/sources/node.js/tools/wafadmin/Utils.py", line 274, in load_module 
    exec(compile(code, file_path, 'exec'), module.__dict__) 
    File "/home/LWE/sources/node.js/wscript", line 12, in <module> 
    import js2c 
    File "/home/LWE/sources/node.js/tools/js2c.py", line 35, in <module> 
    import jsmin 
    File "/home/LWE/sources/node.js/tools/jsmin.py", line 1 
    ../deps/v8/tools/jsmin.py 
    ^
SyntaxError: invalid syntax 

我绝对不会成Python,所以我有一个很难搞清楚了这一点。我错过了一些依赖或什么?

我期望有一些简单的小配置开关,我不得不打开,使这项工作。我只是不知道在哪里/什么/为什么/ ...

我编译node.js在我的Mac之前,从相同的来源和像一个魅力工作。而且我也无法想象节点存储库本身的构建脚本已损坏。

PS:这是一个全新的,最新的Cygwin安装与Python 2.6.5。

+0

更新:我得到了运行构建脚本,但不要问我怎么了。在对一些python脚本进行了修改之后,我基本上将所有东西都恢复到原来的状态,然后错误消失了......但是编译完成后仍然失败。我放弃这个。无论如何,节点在我的Mac上更有趣... – selfawaresoup 2010-08-02 06:44:58

回答

3

我也有一个问题让nodejs使用cygwin编译 - 也是一个Python问题。我最终发现一个参考必须重新绑定cygwin DLL链接,以使所有工作。当然,我找不到我的原始资料来寻求帮助。但我记得足以找到类似的帮助。

所以从http://avalanche123.tumblr.com/post/855374337/nodejs-mongodb-tinyurl

我记得,你可以停止所有cygwin的过程,运行灰(最小的外壳),其通常在找到C:\ cygwin的\斌\ ash.exe,然后在这个壳,运行“的/ usr/bin中/ rebaseall”

有一次,我运行rebaseall命令我可以,使用正常的cygwin外壳,成功运行./configure脚本为源的NodeJS并继续“制造”和“使安装“nodejs。

1

这是旧的,但对于任何人参考本页:jsmin.py是一个符号链接。如果您在Cygwin的msysGit中使用Git,则不会正确创建符号链接。 Cygwin附带的Git客户端在大多数时间处理这些相当体面的事情,然而每隔一段时间它就会有一个barf。如果你在编辑器中调出jsmin.py,你会发现它实际上包含了它应该链接到的文件的路径。要解决此问题并继续编译:

# from the node.js source directory, run: 
% cd tools 
% ln -fs `cat jsmin.py` 

这将重新创建指向正确位置的符号链接。从这里开始,重新运行./configure,你就全都准备好了。

完整的构建指令可在Github处获得。

0

使用Ryan的当前指令我没有问题 - 直到我尝试安装NPM,然后我没有输出。如果您正在使用cygwin并安装node.js,请务必在对该文件执行git操作时使用“works”标记,而不是特定的版本号。否则,不输出/不工作npm。

我们找出让蒙戈正确安装...