Skip to content

[libcxx] Duplicate symbol with libcpmt.lib for static libc++ builds #158562

@FatihBAKIR

Description

@FatihBAKIR

I understand parts of libc++ is implemented by linking with the MSVC's standard C++ library implementation. As far as I can tell, however, for static builds this requires linking against libcpmt, which causes duplicate symbols when linking executables.

lld-link: error: duplicate symbol: int __cdecl std::uncaught_exceptions(void)
>>> defined at D:\a\_work\1\s\src\vctools\crt\github\stl\src\uncaught_exceptions.cpp:9
>>>            libcpmt.lib(uncaught_exceptions.obj)
>>> defined at libc++.lib(exception.cpp.obj)

Is this a known/expected issue?

Metadata

Metadata

Assignees

No one assigned

    Labels

    libc++libc++ C++ Standard Library. Not GNU libstdc++. Not libc++abi.platform:windows

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions