On Monday, 4 December, 2017 15:44, Jens Alfke <j...@mooseyard.com> wrote:
>> If one object is using, for example, the multithreaded runtime and >>the others are using the single threaded runtime (for example), and >>the third perhaps the subsystem runtime >From the OP’s other thread here it looks like they’re developing for >iOS or macOS, neither of which have the sorts of multiple runtimes >you’re talking about (is that a Windows thing?) I had believed it was Windows since "DLL" was mentioned and that is a Windows (or OS/2) contraction for dynamic load library. I don't think anything else uses that term in quite the same way. The multiple library is a Microsoft thing designed to ensure a continuous revenue stream by ensuring that each version of their development platform is incompatible with all prior versions. Once you start using Microsoft tools for anything you are stuck (locked in) into a perpetual cycle of re-writing and re-development of every single thing due to their planned obsolescence requiring re-purchasing tools and redeveloping everything practically fortnightly. The "newer fangled" the technology (from a Microsoft hype perspective) the shorter its viability. This is in contrast to where, for example, one avoids Microsoft tools like the plague, and you end up with stuff that works perfectly for decades on multiple versions of Windows. This does not generate continuous upgrade revenue for either Microsoft or the developer (if it ain't broke why fix it) so typically there is a preponderance of deliberate lock-in by all parties in the Microsoft world. >Also, I don’t see how static libraries can end up using different >runtime libraries, since the runtime gets linked in by the linker, >after the static libs are compiled. But maybe that’s another Windows >thing. Because for the greater certainty of lock-in, the runtime entry point names are different depending on the version of the Toolchain and the particular link library you compiled the object for. In many cases you cannot simply remove the linkage records from the objects and link with a substitute library (though sometimes you can). You have to rebuild the whole thing again. You can link against the platform subsystem library, but that is recommended against because it makes the resultant executable too portable across versions of Windows. _______________________________________________ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users