[Lldb-commits] [PATCH] D26188: [RFC] Solve linking inconsistency, proposal one

Zachary Turner via lldb-commits lldb-commits at lists.llvm.org
Tue Nov 1 09:21:15 PDT 2016


zturner added a comment.

On Windows if you have a DLL (.so) that links against a .lib (.a), and an EXE links against both the DLL and the .lib, then both the DLL and the EXE will each get their own private copy of the symbols in the lib, and the linker won't try to merge them.

Do I understand correctly that this is not the case on Linux?  If you have this:

  foo
      |__  lib.a
      |__  slib.so
            |__  lib.a

That lib.a is mapped at one location, and all the constructors are invoked twice?

If I understand correctly, then it sounds like you can do whatever you want to fix this, and just disable all of this machinery on Windows since it appears unnecessary.


https://reviews.llvm.org/D26188





More information about the lldb-commits mailing list