На будущее, нужно создать пакет libnode для vcpkg, для сборки рантайма ноды из исходников. Ну или дождаться, пока его кто-то сделает другой :)
Этот пункт заслуживает особого внимания, я поясню, в чём вообще суть. Проект использует библиотеку рантайма ноды с динамической линковкой (использует embedder API). Готовые библиотеки под нужную архитектуру/платформу/компилятор скачивать реально https://github.com/nodejs/help/issues/4006 (там рантайм билдится как исполняемый файл, а не как динамическая библиотека). Следовательно, остаётся лишь билдить библиотеки вручную. Но тут проблема в том, что это очень долго, а различных комбинаций архитектур/платформ/конфигураций (debug, release)/компиляторов весьма внушительное количество, так что вручную под всё это прекомпилировать - весьма муторное занятие.
Но есть решение проблемы - vcpkg может взять на себя часть этой головной боли. Он сбилдит из исходников рантайм ноды под нужную конфигурацию, единожды его скомпилирует, и поместит в кэш - то есть, подождать весьма длительную компиляцию нужно только один раз, в дальнейшем готовый пакет будет браться уже из кэша.
Чтобы это реализовать, нужно сделать кастомный порт для libnode, который будет собирать ноду из исходников в нужной конфигурации (не обладаю деталями как это должно делаться).
На будущее, нужно создать пакет libnode для vcpkg, для сборки рантайма ноды из исходников. Ну или дождаться, пока его кто-то сделает другой :)
Этот пункт заслуживает особого внимания, я поясню, в чём вообще суть. Проект использует библиотеку рантайма ноды с динамической линковкой (использует embedder API). Готовые библиотеки под нужную архитектуру/платформу/компилятор скачивать реально https://github.com/nodejs/help/issues/4006 (там рантайм билдится как исполняемый файл, а не как динамическая библиотека). Следовательно, остаётся лишь билдить библиотеки вручную. Но тут проблема в том, что это очень долго, а различных комбинаций архитектур/платформ/конфигураций (debug, release)/компиляторов весьма внушительное количество, так что вручную под всё это прекомпилировать - весьма муторное занятие. Но есть решение проблемы - vcpkg может взять на себя часть этой головной боли. Он сбилдит из исходников рантайм ноды под нужную конфигурацию, единожды его скомпилирует, и поместит в кэш - то есть, подождать весьма длительную компиляцию нужно только один раз, в дальнейшем готовый пакет будет браться уже из кэша. Чтобы это реализовать, нужно сделать кастомный порт для libnode, который будет собирать ноду из исходников в нужной конфигурации (не обладаю деталями как это должно делаться).