Writing C++ Shared Libraries for Linux

I've recently been getting an old Windows-only module cross compiling for Linux. One of the challenges has been figuring out how to make the consuming project find & properly open the .so file. Most posts suggest that you must put your libraries in a specific folder, but a developer friend with stronger Linux kung-fu than mine confirmed that you can simply drop the .so files in the same directory as your application, & consume them using dlopen.

Here's a couple examples: first, a trivial hello world to show the basic consumption, and second, an example of what a reusable interface might look like. The latter shows how to use custom parameter & return types. I am new to designing C interfaces and deploying on Linux, so any comments are welcome.

Hello World from a Linux shared library:

Passing an interface from a Linux shared library:


Popular posts from this blog

Fixing Conan Lock Issues

Making a standard ASP.NET listbox do multiselect without holding Ctrl

Setting up Jenkins, GoogleTest, & Mercurial (with a local repository)