2010-09-29 69 views
3

我克隆了節點git repo,但節點附帶的「waf」構建工具似乎無法與最新版本的Python一起使用。無法在OS X上配置node.js進行make install(Snow Leopard)

$ ./configure 
Traceback (most recent call last): 
    File "/Users/greim/nodestuff/node/tools/waf-light", line 157, in <module> 
    import Scripting 
    File "/Users/greim/nodestuff/node/tools/wafadmin/Scripting.py", line 146 
    except Utils.WafError, e: 
         ^
SyntaxError: invalid syntax 
$ which python 
/Library/Frameworks/Python.framework/Versions/3.0/bin/python 

如果我明白了,那個逗號是一種過時的語法,它不適用於Python 3,對不對?

我寧願不安裝舊版本的Python只是爲了做到這一點。理想情況下,我希望能夠構建和安裝最新版本,而不是依賴其他人分發.dmg文件。

岩石和硬的地方?建議?


[更新]好的,謝謝所有幫助回答這個問題的人。希望其他人可以在Google上找到它。事實證明,我的系統上有Python 2.x(它在OS X上默認安裝),位於/ usr/bin下。所以解決方案是更新我的路徑(不是永久的,只是爲了這個bash會話)。

$ export PATH=/usr/bin:$PATH 
$ ./configure 
$ make 
$ make install 

田田!節點安裝在我的系統上。

回答

3

the waf project page說在Python 2.3到3.1

保持兼容性(和Jython 2.5)

我認爲它目前運行拆包時這樣2to3.py做這個,如果你已經用完首先用python2,那麼它可能是錯誤的。我認爲waf1.6分支是python3 clean

node.js code節點的人擴展waf - 這不是你打算如何使用waf。這個想法是在源代碼中放入waf二進制文件 - 這將使用正確版本的python進行擴展

OSX確實有python 2,所以運行構建的一種方式可能是編輯根makefile並替換第一行

WAF=python tools/waf-light 

通過

WAF=/usr/bin/python tools/waf-light 
+0

嗯,我輸入/用戶/斌/ Python的我的終端上,並通過天哪,有蟒蛇2.6.1。誰知道。 (顯然你做到了。)謝謝。 – greim 2010-09-30 16:23:36

+0

是的,所以解決這個問題是更新我的PATH的一個簡單問題,以便/ user/bin是第一個。 – greim 2010-09-30 16:29:20

+0

您可能會將此報告爲節點的錯誤 – Mark 2010-09-30 19:20:13

相關問題