crystal_lib

Automatic binding generator for native libraries
HEAD Latest release released

crystal_lib Build Status

Automatic binding generator for native libraries in Crystal.

NOTE: THIS PROJECT IS EXPERIMENTAL. WHILE IT'S PROVING USEFUL FOR A WIDE RANGE OF LIBRARIES, THERE ARE STILL SEVERAL CORNER CASES THAT WILL NOT TRANSLATE PROPERLY.

This will eventually be integrated into the compiler itself so you don't have to manually generate these bindings and copy & paste them into your project. The advantage of this is that some types and values vary depending on the platform, so generating these as late as possible is the best thing to do.

Status

For now you can use this as a tool to generate bindings from a lib declaration. Check the examples directory.

Usage

crystal src/main.cr -- examples/lib_git2.cr

This will write the generate lib definition to standard output.

crystal_lib:
  github: crystal-lang/crystal_lib
  
Crystal >= 0.36.0, < 2.0.0

Libraries 1

  • libClang: *

Dependencies 1

  • clang master
    {'branch' => 'master', 'github' => 'crystal-lang/clang.cr'}

Development Dependencies 0

Other repos 1

Last synced .
search fire star recently