ziotom78 / Ducc0.jl

Julia bindings to ducc0
MIT License
1 stars 0 forks source link

Unable to use the library on Windows #4

Closed ziotom78 closed 1 year ago

ziotom78 commented 1 year ago

Even with release 0.29.0+1 of ducc0_jll the CI builds still fail on Windows. It seems that Yggdrasil's PR#6306 was not enough to fix the problems with Julia, as now the tests are failing because the JLL package does not find a suitable DLL file.

Judging from the source code for ducc0_jll, it seems that if AVX is available then ducc0_jll wants to use an AVX DLL and is not able to fall back to the first available binary (in our case, x86_64). If I run augment_microarchitecture on my Windows 7 system, it sets platform["march"] to avx, and then this happens:

julia> using ducc0_jll

julia> ducc0_jll.is_available()
false

I fear this happens because we skipped the creation of the AVX DLL in the first place!

@giordano, do you have any idea about how to fix this and force Julia to revert to x86_64 if no avx DLL is available? I would avoid fixing platform_augmentation manually…

giordano commented 1 year ago

Can you try with https://github.com/JuliaRegistries/General/pull/78531? Pkg is pretty broken with selection of microarchitecture artifacts, that's why we haven't advertised it much, and use it sparsely.

ziotom78 commented 1 year ago

Can you try with JuliaRegistries/General#78531? Pkg is pretty broken with selection of microarchitecture artifacts, that's why we haven't advertised it much, and use it sparsely.

You're awesome, the builds now complete successfully! Many thanks!