Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/crystal-lang/crystal_lib
Automatic binding generator for native libraries in Crystal
https://github.com/crystal-lang/crystal_lib
Last synced: 19 days ago
JSON representation
Automatic binding generator for native libraries in Crystal
- Host: GitHub
- URL: https://github.com/crystal-lang/crystal_lib
- Owner: crystal-lang
- Created: 2014-11-04T20:38:54.000Z (about 10 years ago)
- Default Branch: master
- Last Pushed: 2024-10-14T11:17:51.000Z (about 2 months ago)
- Last Synced: 2024-11-16T22:02:24.312Z (26 days ago)
- Language: Crystal
- Size: 143 KB
- Stars: 138
- Watchers: 15
- Forks: 30
- Open Issues: 24
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-crystal - crystal_lib - Automatic binding generator for native libraries (Project Generators)
- awesome-crystal - crystal_lib - Automatic binding generator for native libraries (Project Generators)
- awesome-crystal - crystal_lib - Automatic binding generator for native libraries (Project Generators)
README
# crystal_lib [![Build Status](https://travis-ci.org/crystal-lang/crystal_lib.svg?branch=master)](https://travis-ci.org/crystal-lang/crystal_lib)
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.