So I tried creating a DLL of one of the smallest libraries I have, the sound library. To make the changes for this I had to add the export syntax to all the classes that could be accessed. I also had to export the std classes I would need. This ended up being a vector<CSound*> forward declaration and the string class. This would lock people into a specific version of the stl and I didn't really want to do that.
All in all I just thought It was a lot of work to be done to not actually get that much benefit. I think maybe in the future I might have a look at it again if I want to reuse just one or two libraries. It would also force me to create better interfaces for the library.
Along with doing this I managed to dig out a few of the source code of the 3rd party libraries I use from an old hard drive. I've rebuilt one of them ensuring the correct CRT is used but it doesn't seem to have fixed the Linker Warnings so it must be one of the other libraries I use.
So next up is still to try and integrate the new ECS into the engine. There is a lot of work to be done and first of all I'm going to try and replace the messaging system and see how that goes. Hopefully there won't be too many template related errors.