-
-
Notifications
You must be signed in to change notification settings - Fork 66
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Compiling v3.0.0 fails on x86 #232
Comments
What OS version/compiler are you using? (I don't know anything about vcpkg.) What options are you running CMake with?
As intended! Exactly for this reason. |
MSVC 17.4.5 - but this should not matter, since |
I understand the warning. The CI already runs (on x86) using gcc, clang, and MSVC, so I want to know what's different about your setup and why it wasn't captured in CI. Edit: Ah - I see. The CI for Windows is using x86_64. (Didn't think anyone used 32-bit anymore 😆!) I will add a build for MSVC 32-bit. |
Fixes #232 (Will add CI for 32-bit in another PR.)
We also only use x64, but when creating microsoft/vcpkg#29840 I ran To locally reproduce it, just run:
|
Another note: Your commit d2f932d doesn't fix the issue, as there are more occurrences. The topic included just one example ;-) |
Yeah - I'll get the CI running and look into the others. (I don't have Windows to build on right now.) Thanks. (Changes README to say it's 64-bit only 😆 ) |
Fixes #232 (Will add CI for 32-bit in another PR.)
Looks like this is going to be... challenging to CI-debug 🤕 |
Seems to compile now :-) (just build without tests for now, but could test it with them too) //Edit: Tried it with tests now: I have also XercesC-Issues (probably because I don't have Win32 libs of them on my usually setup) Just as note, as you have enabled set_target_properties(${target} PROPERTIES
VS_GLOBAL_RunCodeAnalysis true
VS_GLOBAL_EnableMicrosoftCodeAnalysis true
VS_GLOBAL_CodeAnalysisRuleSet AllRules.ruleset
) Also ClangTidy and CppCheck are nice (last one is fast, but has often FP), as I don't see an integration here - they help to find some issues early ;-) |
I have a workflow for this I'll put in after the 32-bit fixes are committed.
Years ago I started a completely new E57 implementation directly from the spec because I couldn't extract xerces-c from this library and because of all the mess in CheckedFile (a constant source of issues). Maybe I should revive that at some point! 😆
I knew that, but I think it's the closest to
I imagine that's like
Agree! 👍 I use them locally in all my projects (through Qt Creator) and have integrated them using CMake/CI in some. I just never integrated them with libE57Format. |
This would be great, as we require XercesC just beause of this lib here ;-)
Indeed
Ah okay, we have integrated them in the CI to make sure no new occurrences will be commited. |
Yes - XercesC is a beast of a library. There are several smaller, better options now - especially for something like this - but the way libE57Format is written makes it a chore to replace. I looked at the state of my new implementation and there would be a fair bit of work to do. I think basic reading (no indices/groups) is about 90% there, writing about 30%. I made some nice command-line tools though! 😄 Most of the infrastructure (and infrastructure-ish) changes in libE57Format 3.0 actually originated with that new implementation - testing, sanitizers, more robust warnings, better version information, ccache, clang-format CI etc.. Given that engagement with libE57Format seems low and there is zero financial support, I'm not sure if I'll pick the new implementation up again. Maybe if I'm bored or inspired someday... |
Tried to integrate the 3.0.0 release into vcpkg, but it fails due to:
Sadly warnings as errors will be always enabled by default as
E57_BUILDING_SELF
will be set toON
.The text was updated successfully, but these errors were encountered: