我對CentOS(5)和node.js很新,但是我已經有一箇舊版本的node.js在我的虛擬服務器上工作。 現在我試圖安裝一個更新的版本,並且我知道CentOS需要Python 2.4,而節點需要2.6或更新版本,所以我使用altinstall安裝了Python 2.7。在CentOS 5上安裝node.js
但是即使我設置別名爲Python是運行./configure之前指向2.7版本,我仍然得到這個錯誤:
/root/node/wscript: error: Traceback (most recent call last):
File "/root/node/tools/wafadmin/Utils.py", line 274, in load_module
exec(compile(code, file_path, 'exec'), module.__dict__)
File "/root/node/wscript", line 222
"-pre" if node_is_release == "0" else ""
^
SyntaxError: invalid syntax
那的./configure的內容:
#! /bin/sh
# v8 doesn't like ccache
if [ ! -z "`echo $CC | grep ccache`" ]; then
echo "Error: V8 doesn't like cache. Please set your CC env var to 'gcc'"
echo " (ba)sh: export CC=gcc"
exit 1
fi
CUR_DIR=$PWD
#possible relative path
WORKINGDIR=`dirname $0`
cd "$WORKINGDIR"
#abs path
WORKINGDIR=`pwd`
cd "$CUR_DIR"
"${WORKINGDIR}/tools/waf-light" --jobs=1 configure $*
exit $?"
在wscript的頂部有一行:「#!/ usr/bin/env python」。我也嘗試用別的東西代替它,但我認爲它應該在使用Python別名時工作
任何想法我需要做什麼才能使它工作?
謝謝!
它看起來像'./configure'或者'wscript'仍然在調用Python2.4而不是Python2.7。你能告訴我們如何./configure調用'wscript'嗎? – unutbu
剛剛更新了問題...... – north
爲了確定問題的根源,您可以打開'wscript'並在頂部粘貼'import sys',然後加上'print sys.version',從而打印出Python的版本_actually_被用於執行。 (順便說一句,正如你發現的那樣,CentOS/RHEL 5實際上已經很老了,移至6可以爲你節省很多麻煩。) –