While technically possible does not mean that it's feasible. For the LCL it simply is not worth the effort this would require.
PascalDragon: are you also one of the Lazarus developers? i thought you were on 'team FPC'.
the advantages seem enormous, not only does it solve the Debian issue, it also yields ELF binaries that are far more universal, in the sense that they will run against multiple widget sets. and it is a chance to begin cleaning out all but the GLIBC dependencies from the ELF Symbol Table.
on the other hand, since the vast majority of Lazarus/FPC users are on the Windows platform (67.7% as of January 2026), it could be argued that no effort for Linux Desktop (4.02%) support is justified.
what do the Lazarus developers think?
I have to back up PascalDragon.
Even if someone started this fulltime now, it wouldn't be do-able in time.
Even if we ignore the existing design issues in some of that code.
Start with the obvious -> a dual exe must contain WS code for e.g. Gtk2 and QT5 (or 6). At least gtk is afaik hard linked to some gtk libs? So all those calls need to be replaced with LoadLibrary, getting the function pointer and using that.
That is in theory a simple task, a search and replace...
But in real live, if you change that many such calls, there will be somewhere some slight misses. And then you will have lengthy debug sessions. That is, if you spot it. It may affect something that only gets spotted in a few month => that is why there are lengthy RC times, and a fixes branch long before it makes a major release.
Then the WS are tightly bound to the LCL. That is done by the linker. That again needs (best scenario, if it actually is possible) be replaced by runtime connecting.
The WS is exposed in a couple of different ways, they all need to be found. I don't even have a complete list.
Then if you completed that list, and executed it, it all needs to be tested.
And you need to give 3rd parties time to test some such fundamental change.
So, if that was started today, by someone who will spent fulltime (~40 hours a week) on this, and they are really really good, and they deliver a first draft in a few month (awfully optimistic), then that still needs to sit in the main branch for at least another 6 month of testing (if not more). And after that would be branched into a fixes branch, that would have to mature yet another 6 month before release.
Unfortunately, other than that generic insight, I am not very familiar with the various WS for Linux. So I can't say much on what ways there are to go. I have seen talk on it, but I can't judge it much myself. So unfortunately I can't currently contribute to a solution here.