If you have ~ / .cabal / world, cabal install --reinstall --enable-shared world may work, but check the --dry-run flag --dry-run . This, however, will only take care of installed packages. If you have packages with your distribution distribution manager, the distribution can also provide generic versions for them (otherwise you will have to do this manually). In addition, it would be useful to set shared: True to ~ / .cabal / config.
Daniel Fischer
source share