PDA

View Full Version : About the Lianja SDK



barrymavin
2013-03-28, 21:17
The Lianja SDK provides a C/C++ API which can be used to extend the Lianja scripting language with functions and/or classes written in C and/or C++.

We are currently packaging this up and reviewing the API documentation. When this is ready it will be included with the Lianja Professional Edition.

Once you have built an extensions library (shared library) using the Lianja SDK all you need to do is copy it into the lianja extensions directory and it will be loaded, introspected and the functions and/or classes you have in it will be available for use by all Lianja supported scripting languages. Lianja handles all the marshaling between the supported scripting languages and your C/C++ extension library.

You will be able to use Visual Studio Express on Windows to compile and build extensions or download the Eclipse C IDE on any operating system and use that.

I am anticipating (and hoping) that any useful extensions will be uploaded to LianjaX with full instructions on how to compile and build them.

So if anyone is feeling adventurous there are a lot of useful things that can be done with the Lianja SDK.

There will be examples included in the distro which you can just copy and tailor to your own requirements.

We will let you know when the documentation is available in the developer documentation wiki.

hmischel@diligentsystems.com
2016-01-22, 08:29
Hi Barry,

I just want to make sure I am not missing something.

I created a DLL called testlib.dll.
It is basically a copy of the example with the class name changed to herb_class. like so.


{"herb_class", "clsMyClass", API_CLASS},

I put the dll (and the .h, .cpp files) in c:\lianja\extensions directory
I modified the extensions.ini file to look like this.


[windows]
library=lianja_extension_example.dll
library=testlib.dll
[linux]
#library=example.so
[mac]
#library=example.dylib


But Lianja cannot see herb_class.

I just want to make sure I am not missing something simple in the process before I spend a lot of time troubleshooting the dll.

Thanks.

Herb

barrymavin
2016-01-22, 18:35
Hi Herb

Try rebuilding the example with the make file supplied and see if that still loads and works.

If it does then check the dependencies of your dll using depends if you have it.

All else failing, attach it to a ticket and I'll take a look at what is causing it not to load your dll or what is wrong with your class.

hmischel@diligentsystems.com
2016-01-23, 17:20
Hi Barry,

My suspicion is that it is something in my pro/make file.
I will see if I can figure it out and will download depends.

Thanks.

Herb