Uh oh!
There was an error while loading. Please reload this page.
Support msvc build for x86 - #7023
Conversation
danmar
commented
Nov 19, 2024
Isn't _WIN64 supposed to be set by the compiler .. if it is not predefined you are supposed to use the non-_WIN64 typedefs? I am not an expert in windows builds but it feels a bit hacky to me that you define _WIN64 unconditionally if a msvc compiler is used. |
msclock
commented
Nov 20, 2024
@danmar Sorry for my unclear explanation, I package cppcheck as a python wheel. And it failed to build for x86 distribution in github ci. Now I just patch it temporarily in the vcpkg build. |
firewave
commented
Nov 20, 2024
Thanks for your contribution. That change would cause x64 binaries not to be fully 64-bit - it needs to be handled differently. We have removed support for x86 in #5397 because we only ever properly supported it in Windows builds and there no longer are ways for other platforms to test it. Why do you still need x86 builds?
No - it is specified in the Visual Studio projects explicitly for x64 projects. Same for |
firewave
commented
Nov 20, 2024
Okay - read up on multi-platform in CMake (it's been a while). I did not look into the defines yet. How do you build Cppcheck? I assume you pass the So to properly address the addition of |
danmar
commented
Nov 20, 2024
Thanks for the clarifications firewave
yes I more or less wonder this too.. I assume you are stuck with 32-bit windows maybe you need support for some old DOS tool or something? |
there's many distributions from cibuildwheel based on arch and OS. And I just encountered the failed build on win32. Anyway,I have passed through ci with some vcpkg tricks.And thanks for your all explanation. because of the unsupported test status in the repo and I'll close this. |
firewave
commented
Nov 21, 2024
What are you using the wheel for? Are you building all of those? Are the build machines publicly available? Given the variety of platforms that could be a nice extension of the CI. Too bad there is no ARM for Windows. But I assume no tests are run in those builds so it would only be partially helpful in terms of getting it built but not having something actually working. |
danmar
commented
Nov 21, 2024
Yes. |
msclock
commented
Nov 22, 2024
I aim to package the wheel promptly for latest cppcheck update. Currently I finished most distribution builds except There are some qemu setup in ci and docker commands seems to help cross-compliling and test. But it has unsupported tests in |
msclock
commented
Nov 23, 2024
Now I have built all distros in that table from https://github.com/msclock/cppcheck-wheel/releases/tag/v1.3.0 |
This option enforces msvc to switch to _WIN64 of the header file
vcruntime.hwhen building for x86, but __int64 does not exist actually.And remove it to support x86 msvc build.