Skip to content

Fix linking to m.lib on Windows with clang#1080

Merged
AngusJohnson merged 1 commit intoAngusJohnson:mainfrom
gecgel:patch-1
Mar 20, 2026
Merged

Fix linking to m.lib on Windows with clang#1080
AngusJohnson merged 1 commit intoAngusJohnson:mainfrom
gecgel:patch-1

Conversation

@gecgel
Copy link
Copy Markdown
Contributor

@gecgel gecgel commented Mar 20, 2026

The old code was doing 2 unrelated things: configuring warnings and linking to the standard math library implementation. Warnings depend on the compiler frontend, which can be tested using CMAKE_CXX_COMPILER_FRONTEND_VARIANT.

Then, we check whether we need to link to a math library. Microsoft's implementation of the C standard library includes the math library. Old code worked for MSVC and MinGW I am assuming, but did not work for clang with lld-link: error: could not open 'm.lib': no such file or directory. I only tested the new version with clang and it does not give the above error.

We separate configuring warnings and linking to the math library. This way, it works for clang on Windows when using Microsoft's standard library.
@gecgel
Copy link
Copy Markdown
Contributor Author

gecgel commented Mar 20, 2026

Note: the previous fix for MinGW was here #337. This is a fix for clang on Windows.

@AngusJohnson AngusJohnson merged commit c324e7b into AngusJohnson:main Mar 20, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants