awesome-repositories.com
博客
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目关于排名机制媒体报道MCP 服务器
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
nodejs avatar

nodejs/node-gyp

0
View on GitHub↗
10,647 星标·1,869 分支·Python·MIT·3 次浏览

Node Gyp

node-gyp is a build system wrapper and compilation tool designed to transform C and C++ source code into binary modules for the Node.js runtime. It functions as a native module compiler that orchestrates the process of converting native source code into binary bindings for high-performance execution.

The project provides cross-platform compilation by managing different compilers and SDKs across Windows, macOS, and Linux. It translates a single project configuration into platform-specific build files, such as Makefiles or Visual Studio projects, to ensure consistent builds across different operating systems.

Beyond standard binary compilation, the tool handles the procurement of remote source files and the management of versioned runtime header files required for binary compatibility. It also supports the generation of portable WebAssembly modules.

Features

  • Add-on Compilation Toolchains - Converts C and C++ source code into binary bindings and modules for high-performance execution in the Node.js runtime.
  • Native Module Toolchains - Provides the primary toolchain for bootstrapping and compiling C and C++ native extensions for the Node.js runtime.
  • Build Environment Configurators - Sets architecture, compiler versions, and system paths using flags or configuration files to prepare the build process.
  • Cross-Platform and Native Compilation - Generates platform-specific build files and manages compiler toolchains to ensure native code compiles across different operating systems.
  • Build Toolchain Abstractions - Maps high-level build commands to specific compilers and SDKs based on the detected host operating system.
  • Multi-Toolchain Integration - Connects with various compilers and SDKs across different operating systems to ensure consistent code compilation.
  • Platform Build File Generators - Translates a central JSON project definition into platform-specific build files like Makefiles or Visual Studio projects.
  • Platform-Specific Build File Generation - Creates platform-specific configuration files, such as Makefiles, based on a central project definition.
  • Build Configuration Management - Reads compilation settings from configuration files or package manifests to determine how native code is built.
  • Binary Compilation - Transforms C and C++ source code into binary modules that the JavaScript runtime can load.
  • Node.js Native Addons - Converts C and C++ source code into binary modules that can be loaded and executed within a Node.js environment.
  • Build Tools - Compiles C and C++ source code into binary modules that can be loaded as native addons by Node.js.
  • Build File Generators - Generates platform-specific build files such as Makefiles and Visual Studio projects from a single project configuration.
  • Build-Time Source Procurement - Downloads and extracts external dependencies from HTTP endpoints during the build process to satisfy native requirements.
  • Target-Specific Build Settings - Builds native modules for specific runtime versions by specifying target versions and header locations.
  • Toolchain Path Resolution - Determines system paths and compiler versions via command-line flags and configuration files to locate build tools.
  • External Source Inclusions - Downloads remote source files via HTTP and integrates them into the compilation process.
  • Native Library Integrations - Fetches remote source files and integrates external C++ libraries into the build process for native extensions.
  • Runtime Header Management - Downloads and links specific versioned C++ header files to ensure binary compatibility with the target runtime.
  • WebAssembly Glue Code Generators - Builds native source code into portable WebAssembly formats, providing the necessary interface for web environments.
  • WebAssembly Compilation - Builds native modules into a portable WebAssembly format for use in web environments.

Star 历史

nodejs/node-gyp 的 Star 历史图表nodejs/node-gyp 的 Star 历史图表

AI 搜索

探索更多 awesome 仓库

用简单的语言描述您的需求 —— AI 将根据相关性为您从数千个精选开源项目中进行排序。

Start searching with AI

常见问题解答

nodejs/node-gyp 是做什么的?

node-gyp is a build system wrapper and compilation tool designed to transform C and C++ source code into binary modules for the Node.js runtime. It functions as a native module compiler that orchestrates the process of converting native source code into binary bindings for high-performance execution.

nodejs/node-gyp 的主要功能有哪些?

nodejs/node-gyp 的主要功能包括:Add-on Compilation Toolchains, Native Module Toolchains, Build Environment Configurators, Cross-Platform and Native Compilation, Build Toolchain Abstractions, Multi-Toolchain Integration, Platform Build File Generators, Platform-Specific Build File Generation。

nodejs/node-gyp 有哪些开源替代品?

nodejs/node-gyp 的开源替代品包括: kitware/cmake — CMake is a cross-platform build system generator and build automation tool. It is used to define build requirements… napi-rs/napi-rs — napi-rs is a framework and toolkit for building high-performance native extensions for Node.js using Rust. It… neon-bindings/neon — Neon is a framework for writing high-performance native Node.js modules using the Rust programming language. It serves… theos/theos — Theos is a cross-platform mobile development toolchain and build system designed for compiling and packaging software… wasm-bindgen/wasm-pack — wasm-pack is a build tool and workflow orchestrator for compiling Rust code to WebAssembly. It coordinates the… thedodd/trunk — Trunk is a build tool and development server for compiling Rust code to WebAssembly and packaging it for browser…

Node Gyp 的开源替代方案

相似的开源项目,按与 Node Gyp 的功能重合度排序。
  • kitware/cmakeKitware 的头像

    Kitware/CMake

    7,968在 GitHub 上查看↗

    CMake is a cross-platform build system generator and build automation tool. It is used to define build requirements and dependencies for C and C++ source code, managing the compilation and linking process across different operating systems. The project functions by generating platform-specific build files and scripts from a single configuration. This allows for the standardization of how software is compiled and packaged for compilers and development tools across various environments. The tool covers C++ project configuration and native application compilation for desktop and embedded system

    C
    在 GitHub 上查看↗7,968
  • napi-rs/napi-rsnapi-rs 的头像

    napi-rs/napi-rs

    7,500在 GitHub 上查看↗

    napi-rs is a framework and toolkit for building high-performance native extensions for Node.js using Rust. It functions as a bridge between Rust and JavaScript runtimes, enabling the conversion of data types and the execution of native functions within a JavaScript environment. The project provides a native binary compiler and a cross-platform module orchestrator to automate the compilation and publishing of packages across multiple operating systems and architectures. It generates corresponding JavaScript type definitions and platform-specific binaries to ensure consistent installation. The

    Rustjavascriptnapinapi-rs
    在 GitHub 上查看↗7,500
  • neon-bindings/neonneon-bindings 的头像

    neon-bindings/neon

    8,410在 GitHub 上查看↗

    Neon is a framework for writing high-performance native Node.js modules using the Rust programming language. It serves as a foreign function interface bridge and a toolchain for bootstrapping, compiling, and managing Rust-based extensions. The project provides a cross-language memory manager that handles buffers and object borrowing to ensure safe memory access between Rust and JavaScript. It enables the mapping of data types and function calls across the language boundary, allowing Rust functions to be exported to the script environment and JavaScript functions to be called from Rust. The f

    Rust
    在 GitHub 上查看↗8,410
  • theos/theostheos 的头像

    theos/theos

    4,867在 GitHub 上查看↗

    Theos is a cross-platform mobile development toolchain and build system designed for compiling and packaging software for mobile operating systems. It functions as a system tweak kit and runtime hooking framework, allowing developers to create modifications that alter the internal behavior of mobile OS environments. The project distinguishes itself by providing specialized preprocessor syntax that generates low-level API calls, removing the boilerplate code typically required for function and method hooking. It enables dynamic runtime method swizzling and class extensions, allowing developers

    Makefilebuild-systemioslinux
    在 GitHub 上查看↗4,867
查看 Node Gyp 的所有 30 个替代方案→