You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is a follow-up, and generally a re-opening of this previous issue: #222
Sol can be used to implement C libraries. I understand from the previous issue linked above it is not the intended scope of Sol, but it is possible and would be helpful to document this unintentional feature.
You will see in my example below that I use existing Sol features and API to implement a C library. In this case, I'm just making some hypothetical C++ functions callable from Lua.
Obviously there's no need to document every scenario and use case (Sol's doc is already quite complete in this respect), but providing a simple demonstration of the capability and a working example would help others.
You're right, we only have 2 requires examples and probably need a basic "Create C library" version of that. This will probably work for that, but I'd need to set up a small CMake app that'll compile this as a static lib and then open it from a library and then make sure it works across lua versions.
I'd need to set up a small CMake app that'll compile this as a static lib
In my tinkering, I had been compiling my example code as a shared object and let Lua's C library loader find the .so and load it. And of course I'm using CMake to build it. I might clean it up well enough to send you a PR.
This is a follow-up, and generally a re-opening of this previous issue:
#222
Sol can be used to implement C libraries. I understand from the previous issue linked above it is not the intended scope of Sol, but it is possible and would be helpful to document this unintentional feature.
You will see in my example below that I use existing Sol features and API to implement a C library. In this case, I'm just making some hypothetical C++ functions callable from Lua.
Obviously there's no need to document every scenario and use case (Sol's doc is already quite complete in this respect), but providing a simple demonstration of the capability and a working example would help others.
The text was updated successfully, but these errors were encountered: