Skip to content

Do not link with when symbols are duplicated#2076

Draft
Alexandr-Konovalov wants to merge 5 commits into
masterfrom
dev/Alexandr-Konovalov/already_defined_in_libmmt.lib
Draft

Do not link with when symbols are duplicated#2076
Alexandr-Konovalov wants to merge 5 commits into
masterfrom
dev/Alexandr-Konovalov/already_defined_in_libmmt.lib

Conversation

@Alexandr-Konovalov
Copy link
Copy Markdown
Contributor

Description

For IA-32/Intel compiler/CMAKE_MSVC_RUNTIME_LIBRARY=MultiThreaded* there is a mass linking failure for tests and examples with

libucrt.lib(frexp.obj) : error LNK2005: _frexp already defined in libmmt.lib(frexp_iface_c99.obj)

This PR removed linking with libmmt.lib for the affected configuration.

Type of change

  • bug fix - change that fixes an issue
  • new feature - change that adds functionality
  • tests - change in tests
  • infrastructure - change in infrastructure and CI
  • documentation - documentation update

Tests

  • added - required for new features and some bug fixes
  • not needed

Documentation

  • updated in # - add PR number
  • needs to be updated
  • not needed

Breaks backward compatibility

  • Yes
  • No
  • Unknown

Notify the following users

List users with @ to send notifications

Other information

@github-actions github-actions Bot added the tests label May 12, 2026
@Alexandr-Konovalov Alexandr-Konovalov changed the title Do not link with when symbols are duplicated. Do not link with when symbols are duplicated May 12, 2026
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates the IntelLLVM Windows CMake compiler settings to avoid linker failures caused by duplicate symbols between Intel’s libmmt.lib and the MSVC UCRT when building 32-bit executables with a static MSVC runtime.

Changes:

  • Add a conditional linker workaround for IA-32 + CMAKE_MSVC_RUNTIME_LIBRARY=MultiThreaded* to ignore libmmt.lib during executable linking.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread cmake/compilers/IntelLLVM.cmake Outdated
Comment thread cmake/compilers/IntelLLVM.cmake Outdated
Alexandr-Konovalov and others added 3 commits May 28, 2026 12:05
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
@Alexandr-Konovalov Alexandr-Konovalov force-pushed the dev/Alexandr-Konovalov/already_defined_in_libmmt.lib branch from 2a8aa17 to 44bdafc Compare May 28, 2026 10:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants