2012-05-04 103 views

回答

4

您需要下載源碼包sudo apt-get source nodejs。您提到的路徑在那裏。

您需要在deps/v8中使用scons prof=on d8才能首先構建調試器,這在64位計算機上可能會出現問題(v8僅爲32位),請參閱here以獲取更多信息。

+1

V8不再使用scons – OrangeDog

0

要麼安裝源碼包 - sudo apt-get source nodejs,要麼切換到official source,因爲ubuntu包非常過時。

要構建d8,請轉至deps/v8目錄。

  1. build/gyp創建符號鏈接到gyp可以找到的目錄(例如/usr/bin)。
  2. 運行make native
  3. 複製/符號鏈接out/native/d8到PATH上的某處。
2

這裏是我做到了對Node.js的0.10.25和0.10.26:

  1. 我下載對應於我使用的二進制文件Node.js的來源。 (我正在進行Debian測試,這比Node.js網站的版本稍微落後。)

  2. 我檢查了節點源中捆綁的v8版本。 (看看deps/v8/ChangeLog。這是爲3.14.5 Node.js的0.10.25和0.10.26)

  3. 我下載了這個確切版本V8從v8 site

    爲什麼?我嘗試在Node.js deps/v8目錄中運行make native,但Makefile正在抱怨缺少測試目錄。由此我們可以推斷出Node開發人員不包括整個v8發行版。曾幾何時,使用早期版本的Node(0.8.something),我從deps/v8中的可用內容構建了v8,但是這次我決定使用不同的方法。

  4. 作爲V8的build/README.txt的V8解釋,在源代碼樹的頂層,我所做的:。

    $ svn co http://gyp.googlecode.com/svn/trunk build/gyp 
    

    (鏈接我安裝gypbuild/gyp在OrangeDog的答案沒有工作,建議這就是爲什麼我做了上述。)

  5. 我跑:

    $ CXX=g++-4.7 make native 
    

    爲什麼CXX設置?當我嘗試使用默認的gcc時,我馬上遇到了一個編譯問題。我檢查了版本。這是4.8,我記得Slashdot有關4.8如何給人們帶來麻煩的故事。所以我安裝了4.7。工作很好。

  6. 我將out/native/d8鏈接到了我的PATH中的位置。這是因爲linux-tick-processor腳本在查找d8方面做得不好。最簡單的解決方案是使其在我的PATH中可用。你的旅費可能會改變。

這一切後,linux-tick-processor可以與節點產生v8.log文件中使用。