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

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

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

14 个仓库

Awesome GitHub RepositoriesNative Header Generators

Tools for generating header files from modules to allow external code to interact with native types.

Distinct from C Function Bindings: Distinct from C Function Bindings: focuses on header generation for C++ interoperability rather than just function mapping.

Explore 14 awesome GitHub repositories matching programming languages & runtimes · Native Header Generators. Refine with filters or upvote what's useful.

Awesome Native Header Generators GitHub Repositories

用 AI 发现最棒的仓库。我们将通过 AI 为您搜索最匹配的仓库。
  • swiftlang/swift-evolutionswiftlang 的头像

    swiftlang/swift-evolution

    15,854在 GitHub 上查看↗

    Swift Evolution serves as the central governance and design platform for the Swift programming language. It provides a structured, collaborative framework for tracking, discussing, and managing the formal proposals and technical goals that define the language's syntax, semantics, and core features. By maintaining a comprehensive collection of design documentation, the project ensures the long-term stability and consistency of the language as it matures. The repository acts as the primary hub for the language's evolution, coordinating community feedback and technical decisions through a transp

    Generates header files from modules to allow external code to call functions and interact with native types.

    Markdown
    在 GitHub 上查看↗15,854
  • shirou/gopsutilshirou 的头像

    shirou/gopsutil

    11,866在 GitHub 上查看↗

    This library provides a cross-platform toolkit for retrieving system metrics and managing processes. It functions as a unified interface for accessing low-level hardware and operating system data, allowing developers to monitor CPU, memory, disk, and network usage across diverse computing architectures without requiring external dependencies. The project distinguishes itself through its ability to maintain consistent data structures across different operating systems by parsing native system headers and wrapping low-level system calls. It includes specialized support for containerized environ

    Generates native type definitions by parsing system header files to ensure consistent data structures across diverse hardware architectures.

    Gogogolangsystem-information
    在 GitHub 上查看↗11,866
  • nasa/fprimenasa 的头像

    nasa/fprime

    10,766在 GitHub 上查看↗

    F Prime 是一个基于组件的框架,专为嵌入式和航天软件的开发与部署而设计。它提供了一种模块化架构,将软件逻辑与通信接口解耦,允许开发者通过领域特定建模语言定义系统结构。这种基于模型的方法支持自动化代码生成,在确保复杂系统拓扑一致性的同时,维护了软件模块之间严格的接口契约。 该框架的特色在于其集成的构建系统和地面数据操作套件。它实现了嵌入式软件全生命周期的自动化,从交叉编译和依赖管理到遥测与命令接口的生成。通过为机载飞行软件和地面监控提供统一的环境,它促进了跨不同硬件平台的分布式嵌入式系统的无缝集成、测试及指挥控制。 除了核心架构外,该项目还包含用于系统可观测性的综合工具,包括实时遥测可视化、事件日志记录和诊断追踪。它支持从裸机环境到实时操作系统的多种部署场景,并提供了内存管理、状态驱动行为建模和异步任务执行机制。 该项目以 C++ 仓库形式维护,并提供详尽的文档和支持跨平台开发的构建系统。

    Creates header files automatically from component definitions to ensure consistent interface declarations.

    C++componentscppembedded
    在 GitHub 上查看↗10,766
  • jetbrains/kotlin-nativeJetBrains 的头像

    JetBrains/kotlin-native

    6,982在 GitHub 上查看↗

    Kotlin-native is an ahead-of-time, cross-platform compiler and toolchain that transforms Kotlin source code into standalone native machine binaries. It functions as an LLVM native compiler, producing executable files that run directly on hardware without the requirement of a virtual machine. The project enables cross-platform native development across multiple operating systems and processor architectures, including iOS, Linux, and Windows. This allows for the creation of native Apple platform applications and software for embedded systems programming where direct memory management and minima

    Provides tools to parse C headers and automatically generate type-safe language bindings for native interoperability.

    Kotlinccompilerkotlin
    在 GitHub 上查看↗6,982
  • swig/swigswig 的头像

    swig/swig

    6,294在 GitHub 上查看↗

    SWIG is a tool that generates wrapper code to expose C and C++ libraries to a wide range of higher-level programming languages. It reads annotated C/C++ header files and produces language-specific bindings from a single interface definition, supporting languages such as Python, Java, Ruby, C#, Perl, and many others. The generated wrapper code is free from the project's GPL license, allowing users to distribute it under their own terms. The tool handles modern C++ features including templates, namespaces, smart pointers, and constructs up to C++20 through specialized parsing and code generatio

    Produces Java Native Interface wrappers allowing Java applications to invoke C/C++ library routines.

    SWIG
    在 GitHub 上查看↗6,294
  • nanopb/nanopbnanopb 的头像

    nanopb/nanopb

    5,437在 GitHub 上查看↗

    Nanopb is a lightweight C implementation of Protocol Buffers designed for resource-constrained systems and microcontrollers. It functions as both an embedded serialization library for encoding and decoding structured data and a code generator that transforms definition files into compact C source and header files. The project is distinguished by its focus on static memory allocation, using fixed maximum sizes for strings and arrays to avoid dynamic memory allocation and heap fragmentation. It employs a callback-based streaming mechanism to process messages or fields that exceed available phys

    Generates C header files to enable typed message handling in resource-constrained embedded projects.

    C
    在 GitHub 上查看↗5,437
  • progrium/darwinkitprogrium 的头像

    progrium/darwinkit

    5,428在 GitHub 上查看↗

    Darwinkit 是一个 Cgo 互操作层和原生绑定库,允许 Go 应用程序调用 Apple 框架和系统 API。它作为 Go 运行时与原生 C 兼容符号之间的桥梁,旨在促进 macOS 系统编程和原生应用程序开发。 该项目包含一个 Objective-C 绑定生成器,可扫描系统符号数据库以生成 Go 源代码和常量。该工具支持检查框架符号并管理绑定模块,以保持与原生框架的当前接口一致。 该库提供了一个内存管理系统,用于协调 Go 内部的原生对象生命周期。这涵盖了引用计数的使用、创建自动释放池以处理延迟对象,以及应用终结器以防止内存泄漏。 它还支持通过直接绑定系统调用和内核信息请求与操作系统进行直接交互。

    Provides a generator that scans system symbol databases to produce Go source code and constants for native frameworks.

    Goappkitappleapple-apis
    在 GitHub 上查看↗5,428
  • rust-lang/rust-bindgenrust-lang 的头像

    rust-lang/rust-bindgen

    5,212在 GitHub 上查看↗

    Rust-bindgen is a build-time foreign function interface binding generator and C header parser designed to automate cross-language interoperability. It functions as a tool to bridge Rust with C, C++, and Objective-C libraries by producing platform-specific declarations during the compilation process. The project distinguishes itself through its ability to handle complex C-family language constructs, including C++ inheritance and methods, as well as Objective-C classes and protocols. It ensures binary compatibility across different architectures by calculating target-aware memory layouts and va

    Creates FFI definitions from Objective-C headers by mapping classes to structs and protocols to traits.

    Rustbindingscodegenffi
    在 GitHub 上查看↗5,212
  • lwjgl/lwjgl3LWJGL 的头像

    LWJGL/lwjgl3

    5,269在 GitHub 上查看↗

    LWJGL is a cross-platform library that provides Java bindings to native APIs for graphics, audio, compute, windowing, and input. It enables Java applications to access low-level hardware-accelerated capabilities such as OpenGL and Vulkan rendering, OpenAL 3D audio, OpenCL GPU compute, and GLFW windowing and input handling. Under the hood, LWJGL dynamically resolves native function pointers at runtime, loads platform-specific shared libraries, and uses generated JNI bindings to bridge Java and native code. It offers explicit memory management through direct buffer access and stack-allocated me

    Ships a tool that parses C headers to auto-generate Java native bindings and JNI wrappers.

    Javabindingsfmodfreetype
    在 GitHub 上查看↗5,269
  • dotnet/silk.netdotnet 的头像

    dotnet/Silk.NET

    4,907在 GitHub 上查看↗

    Silk.NET is a low-level API binding library for the .NET ecosystem that provides high-performance interfaces for graphics, audio, and input APIs. It consists of a C header binding generator that converts headers into type-safe language bindings, a graphics API interface for GPU compute and rendering, and a cross-platform windowing wrapper. The project utilizes a customizable pipeline to automate the generation of language bindings from C headers by mapping metadata to syntax trees. Its windowing and input abstraction provides a unified interface to manage application windows across different

    Includes a pipeline that automates the creation of language bindings by parsing C headers into metadata and syntax trees.

    C#3daudiocsharp
    在 GitHub 上查看↗4,907
  • bytedeco/javacppbytedeco 的头像

    bytedeco/javacpp

    4,697在 GitHub 上查看↗

    JavaCPP 是一个 JNI C++ 桥接器和外部函数接口,提供绑定生成器、原生库加载器和原生内存管理器。它自动化了在原生 C++ 头文件和共享库周围创建 Java 包装器的过程,以实现两种语言之间的互操作性。 该项目具有一个 C++ 绑定生成器,可解析头文件以自动生成调用原生函数所需的胶水代码和接口。它包含一个原生库加载器,可定位并从类路径中提取特定平台的二进制文件到本地缓存中以供运行时执行。 该系统通过直接指针映射和资源跟踪来管理高性能原生内存访问,以防止内存泄漏。它处理 C++ 数据结构的复杂类型映射,并支持原生回调映射以将函数指针链接到 Java 方法。 该工具集允许使用 C++ 或汇编实现替换托管方法,以优化执行时间并减少资源开销。

    Parses C++ header files to automatically generate Java wrapper classes and the corresponding JNI glue code.

    Javacc-plus-pluscpp
    在 GitHub 上查看↗4,697
  • eliben/pycparsereliben 的头像

    eliben/pycparser

    3,473在 GitHub 上查看↗

    pycparser is a C99 parser library that converts C source code into an abstract syntax tree consisting of Python objects. It functions as an abstract syntax tree generator, transforming preprocessed C code into a structured hierarchy for programmatic analysis and transformation. The library integrates with a C preprocessor to handle directives before parsing. It also features a stub header parser, which uses minimal mock headers to allow the parsing of C code without requiring a full system C library installation. The project provides tools for static code analysis, C program analysis, and so

    Provides minimal stub headers to enable parsing of C source code without a full system library installation.

    Python
    在 GitHub 上查看↗3,473
  • wxwidgets/phoenixwxWidgets 的头像

    wxWidgets/Phoenix

    2,618在 GitHub 上查看↗

    Phoenix is a cross-platform Python framework designed for building native desktop graphical user interfaces. It functions as a language binding generator and build automation system, enabling developers to create applications that utilize the underlying operating system's native controls and visual styles. The project provides a mechanism for mapping native C++ graphical toolkit components to Python, allowing for the development of desktop

    Automatically generates header-based bindings to map native C++ objects into Python interfaces.

    Pythonawesomecross-platformgui
    在 GitHub 上查看↗2,618
  • intel/llvmintel 的头像

    intel/llvm

    1,497在 GitHub 上查看↗

    The project is a reusable collection of modular compiler and toolchain technologies designed for building optimizers, code generators, and multi-language programming environments. It provides foundational compiler frontend technologies that translate source code written in C, C++, and Objective-C into a low-level programming language and intermediate code format. This intermediate representation enables cross-language analysis, program transformation, and target-independent optimization alongside a cross-platform programming framework that allows developers to write single-source accelerated a

    Automatically generates C and C++ header files and Python modules from interface definitions to streamline cross-language integration.

    LLVMintelllvmoneapi
    在 GitHub 上查看↗1,497
  1. Home
  2. Programming Languages & Runtimes
  3. Language Interoperability
  4. Native C Interoperability
  5. C Function Bindings
  6. Native Header Generators

探索子标签

  • C Header Binding Generators4 个子标签Tools that parse C headers to automatically generate type-safe language bindings. **Distinct from Native Header Generators:** Generates the final language bindings from headers, whereas native header generators often create C headers for other languages.
  • C Header-to-Java Binding GeneratorsTools that parse native C headers to automatically produce Java JNI bindings with type conversions. **Distinct from Native Header Generators:** Distinct from Native Header Generators: generates Java bindings from C headers, not C++ header files for Rust.
  • Native Header ProcessorsTools that parse system header files to generate native type definitions for cross-platform compatibility. **Distinct from Native Header Generators:** Distinct from Native Header Generators: focuses on parsing headers to derive type definitions for system-level consistency rather than just generating bindings for external code.