The reason I'm asking about the platform is because on Linux, we support 3 different platforms:
- .NET (via mono and coreclr)
The way to interact with C code is different for all 3.
For .NET you can place it in a shared object (.so) and use PInvoke to call that object.
For Java you can use JNI or a shared object with JNA
For Island you can import the C headers and link it in, call it directly.