Use CBinding.jl to automatically create C library bindings with Julia at runtime. In order to support the fully automatic conversion and avoid name collisions, the names of C types or functions are mangled a bit to work in Julia. Therefore everything generated by CBinding.jl can be accessed with the c"..." string macro to indicate that it lives in C-land. As an example, the function func above is available in Julia as c"func". It is possible to store the generated bindings to more user-friendly names (this can sometimes be automated, see the j option). Placing each C declaration in its own macro helps when doing this manually.

Features

  • Fully supports C's struct, union, and enum types
  • Alignment strategies
  • Anonymous types
  • Inline functions (experimental opt-in)
  • Function calling conventions
  • Automatic callback function pointers

Project Samples

Project Activity

See All Activity >

License

MIT License

Follow CBinding.jl

CBinding.jl Web Site

Other Useful Business Software
Earn up to 15% annual interest with Nexo. Icon
Earn up to 15% annual interest with Nexo.

Access competitive interest rates on your digital assets.

Generate interest, borrow against your crypto, and trade a range of cryptocurrencies — all in one platform. Geographic restrictions, eligibility, and terms apply.
Get started with Nexo.
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of CBinding.jl!

Additional Project Details

Programming Language

Julia

Related Categories

Julia Data Visualization Software

Registered

2023-11-30