在我的節點模塊中,我使用了源代碼中需要一段時間編譯的較大的庫。我相信這與node-gyp默認使用的--no-parallel
設置有關。現在我想知道是否可以並行編譯node-gyp編譯cpp文件來加速這個過程。我找不到對GYP format reference page有幫助的東西。是否有我的項目gyp文件的設置或node-gyp的黑客?如何啓用node-gyp並行構建?
回答
只需添加到您的package.json文件:
"scripts": {
"install": "node-gyp rebuild -j 8"
},
看着the code,這也可能工作:
$ env JOBS=8 npm install ...
沒錯,你可以設置一個環境選項,但我真的更喜歡gyp文件中的選項,以便它可以在所有情況下工作(對於開發者,在Travis或其他CI env,特別是爲你的用戶)。 –
@MikeLischke你如何觸發構建?根據我對native模塊的經驗,你可以在'package.json'中添加一個'build'腳本,它也可以包含環境變量(''build':'env JOBS = 8 node-gyp ...'') 。 – robertklep
對於特拉維斯我試過安裝:選項,這運行我的命令,只是爲了給我一個錯誤,我找不到node-gyp。但也許我應該嘗試構建:選項呢? –
- 1. 如何使用構建服務器啓動並運行?
- 2. 如何使用並行構建/並行化測試來減少構建時間?
- 3. 如何通過命令行而不是eclipse IDE啓用並行構建選項?
- 4. 如何做並行CMake的ExternalProject構建
- 5. 如何從命令行構建並啓動Windows 8 metro應用程序
- 6. 如何排除一些從並行構建構建的項目?
- 7. 並行構建kdevelop
- 8. 並行TeamCity構建
- 9. 如何在Eclipse CDT中使用-j進行並行make構建?
- 10. 如何運行構建codenameone構建?
- 11. Android NDK:如何構建並使用預構建的庫
- 12. 如何啓用puppeteer並行測試?
- 13. 並行構建/部署
- 14. 構建並行循環
- 15. 並行構建OpenGL模型?
- 16. Dockerfile:構建並運行
- 17. 如何使用NodeJS構建配置並進行表達?
- 18. 如何使用Git在OS X上構建並運行emesene
- 19. 如何讓Xcode構建並使用Applescript運行?
- 20. 如何正確使用make並行構建?
- 21. 如何在eclipse中使用gradle構建並運行android項目
- 22. 如何構建並運行apjsua示例應用程序
- 23. Xcode:「構建並運行」,無需重新啓動iPhone模擬器
- 24. 如何在程序啓動構建Windows
- 25. 如何構建本地Eclipse啓動器?
- 26. OpenMP的並行用於構建性能
- 27. 使用並行掃描構建堆
- 28. 如何遍歷目錄結構並在vimscript中啓動mvn構建?
- 29. 如何重構使用並行
- 30. 如何關閉多項目構建測試的並行執行?
對於手動命令行,建立'節點GYP建設 - j 8'也可以像你期望的那樣工作。與GNU Make不同,'-j8'雖然沒有做任何事情,甚至沒有警告。很糟糕的命令行參數處理:/ –