Well, first LCL is object oriented Pascal. So you would have to create a procedural C callable api in Pascal first.
Then you need to keep in mind that the widgetset is supported compiletime. So you would need a LCL shared lib per widgetset.
Finally, there are probably issues stuffing the LCL in a shared lib atm. (which is why Lazarus/FPC doesn't ship with everything in libs by default)