So how it works for me with FreePascal 2.5.1 from fixes_2_6 branch?
I never tried it, since I don't use this, I just wrote what I understood from the commits I read and bug reports, so I could be saying something wrong.
Plus it seams that you use something non-standard, I was refering to the standard way of doing this: dynlibs unit from Free Pascal, which has LoadLibrary (don't confuse it with Windows.LoadLibrary, they are named the same and do the same but are not the same). But it seams that you use a non-standard method: directly calling dlopen from the linker?
So what exactly fails here for you and how do you know that dynamic loading works? I though that you previously said that your project does not work in Android at the moment.
O_o Maybe you confuse it with dynamic loading of libraries which are inside apk?
Does it matter the location of the libraries?