2016-09-04 5 views
2

В моем модуле узла я использую большую библиотеку в исходном коде, которая требует времени для компиляции. Я считаю, что это связано с настройкой --no-parallel, используемой по умолчанию node-gyp. Теперь мне интересно, можно ли параллельно создавать файлы cpp node-gyp, чтобы ускорить этот процесс. Я не мог найти ничего, что могло бы помочь на GYP format reference page. Есть ли настройка для моего проекта gyp-файла или взлома для node-gyp?Как включить параллельные сборки node-gyp?

ответ

3

Просто добавьте в файл package.json:

"scripts": { 
    "install": "node-gyp rebuild -j 8" 
}, 
+1

Для руководства сборки из командной строки, 'узел-лавочка сборки - j 8' также работает так, как вы ожидали. В отличие от GNU Make, '-j8' ничего не делает, даже не предупреждая. Довольно плохое управление командами командной строки:/ –

3

Глядя на the code, это может также работать:

$ env JOBS=8 npm install ... 
+0

Правда, вы можете установить параметр среды, но я действительно предпочел бы вариант в gyp-файле, чтобы он работал во всех ситуациях (для dev, в Travis или другом CI env и, в частности, для ваших пользователей). –

+0

@MikeLischke как вы запускаете сборку? По моему опыту с собственными модулями вы добавляете скрипт 'build' в' package.json', который также может включать переменную среды ('' build ":" env JOBS = 8 node-gyp ... "') , – robertklep

+0

Для Travis я попробовал параметр install:, и это выполнило мою команду, только чтобы сообщить об ошибке, что я не могу найти node-gyp. Но, может быть, я должен попробовать вариант сборки: тогда? –

 Смежные вопросы

  • Нет связанных вопросов^_^