ADIOS2 icon indicating copy to clipboard operation
ADIOS2 copied to clipboard

Fix static blosc2 build

Open vicentebolea opened this issue 3 months ago • 6 comments

Here, we give up supporting older c-blosc2, I set the dependency of blosc2 to 2.10.1 so that it always includes the blosc2config.cmake file (that you made). This simplify things a lot.

vicentebolea avatar Mar 12 '24 23:03 vicentebolea

@ax3l For some strange reason #4092 broke.

vicentebolea avatar Mar 12 '24 23:03 vicentebolea

@ax3l I give up supporting older c-blosc2, I set the dependecy to 2.10.1 that includes the blosc2config.cmake file (that you made). This simplify things a lot (as you suggested months ago).

vicentebolea avatar Mar 12 '24 23:03 vicentebolea

@eisenhauer is it possible that the test errors are related to enabling blosc2 in the windows build?

vicentebolea avatar Mar 14 '24 23:03 vicentebolea

The reason was blosc2 also installing bzip2 which in turn has that issue, disabling bzip2. This can be fixed later.

vicentebolea avatar Mar 15 '24 00:03 vicentebolea

@eisenhauer is it possible that the test errors are related to enabling blosc2 in the windows build?

Maybe. That it's only happening in BP3, which hasn't been a recommended file format for many years, certainly drops the priority of finding the problem as opposed to patching around it in someway...

eisenhauer avatar Mar 15 '24 00:03 eisenhauer

@ax3l can you try this branch, I have added blosc2 to our windows static build and it passes. Let me now.

vicentebolea avatar Mar 15 '24 16:03 vicentebolea

I think that this is ready to merge @eisenhauer. This should allow @ax3l to build with adios2 static in windows and we added blosc2 in the windows static build.

vicentebolea avatar Mar 18 '24 19:03 vicentebolea

Thanks a lot! I just boarded a plane to Europe, but will try this during the week 👍

ax3l avatar Mar 19 '24 01:03 ax3l

Thanks a lot! I just boarded a plane to Europe, but will try this during the week 👍

Safe trip!

vicentebolea avatar Mar 19 '24 01:03 vicentebolea

32bit windows: this fails due to another reason:

2024-03-25T06:36:25.2420671Z D:\a\openPMD-api\openPMD-api\src\dep-adios2\ADIOS2-fix-static-blosc2-build\source\adios2\toolkit\format\bp5\BP5Serializer.cpp(1600,68): error C2397: conversion from 'uint64_t' to 'size_t' requires a narrowing conversion [D:\a\openPMD-api\openPMD-api\src\build-adios2\source\adios2\adios2_core.vcxproj]
2024-03-25T06:36:25.2425984Z D:\a\openPMD-api\openPMD-api\src\dep-adios2\ADIOS2-fix-static-blosc2-build\source\adios2\toolkit\format\bp5\BP5Serializer.cpp(1600,68): warning C4244: 'initializing': conversion from 'uint64_t' to 'size_t', possible loss of data [D:\a\openPMD-api\openPMD-api\src\build-adios2\source\adios2\adios2_core.vcxproj]
2024-03-25T06:36:25.2429288Z D:\a\openPMD-api\openPMD-api\src\dep-adios2\ADIOS2-fix-static-blosc2-build\source\adios2\toolkit\format\bp5\BP5Serializer.cpp(1601,32): warning C4244: '+=': conversion from 'uint64_t' to 'size_t', possible loss of data [D:\a\openPMD-api\openPMD-api\src\build-adios2\source\adios2\adios2_core.vcxproj]
2024-03-25T06:36:25.2431866Z D:\a\openPMD-api\openPMD-api\src\dep-adios2\ADIOS2-fix-static-blosc2-build\source\adios2\toolkit\format\bp5\BP5Serializer.cpp(1608,69): error C2397: conversion from 'uint64_t' to 'size_t' requires a narrowing conversion [D:\a\openPMD-api\openPMD-api\src\build-adios2\source\adios2\adios2_core.vcxproj]

#4105

ax3l avatar Mar 25 '24 06:03 ax3l

64bit windows:

  • builds ADIOS2 :tada:
  • configures openPMD-api :tada:
  • links openPMD-api :tada:

The patch here is ready to go! :rocket: :sparkles:

ax3l avatar Mar 25 '24 06:03 ax3l

MSAN barely ran out of time. (It was doing the last installation check. Probably we should disable installation checks for the sanitizers as that doesn't exercise any code that we should be sanitizing... Going to bypass branch protections and merge this anyway.

eisenhauer avatar Mar 25 '24 12:03 eisenhauer