Closed amontoison closed 1 year ago
@amontoison DLLs on Windows are a different kind of beast. They're not just a matter of compiling and linking properly like on Linux or macOS. Neither of us ever mustered the courage (or the interest) to compile CUTEst DLLs.
But I'd like to merge your GitHub Action after you remove Windows from there. Note that I already generate binaries for Linux and macOS here: https://github.com/optimizers/homebrew-cutest
Is it possible to activate GHA before, such that we verify that the script works?
I'm not an expert, so could you tell me what I need to enable, and how, please.
They are enabled but I think they won't run until they are in master
. The script could use some major cleanup: remove Windows ans use ENV for starters instead of exporting every time.
I'll leave it to you to add to master when ready. I believe that this lies within your competences, not mine
I updated the ci.yml
.
It will be great great to add tests with shared libraries in the future because I have segmentation faults with them and it's hard to determine the origin within Julia.
The problem could be in the Julia interface or here.
add tests with shared libraries
Well unfortunately, this package doesn't build shared libraries. We would have to change the build system to Autotools / CMake or something that can actually take care of multi-platform subtleties.
The way I hack shared libraries for macOS and Linux in the Homebrew formula and Yggdrasil is exactly that... a hack. None of us has time to revisit the build system unfortunately.
Actually, we now have a feature to build dynamic (shared) libraries from the static ones in galahad. We need this to provide Python interfaces. There is a small script in $GALAHAD/bin/create_dynamic that needs to be fed appropriate compiler flags (and these flags are provided as part of the whole optrove install).
@dpo I updated the CI script, it works on my fork: https://github.com/amontoison/CUTEst/pull/3 It's the same branch.
CUTEst is just not compiled in single precision, I don't know why.
Maybe we should use a sleep()
before the last three inputs yyb
and wait during the compilation of SIFDecode.
Closing in favor of #25. Thanks!
I try to cross-compile CUTEst with Yggdrasil to generate a new artifact for Julia but I have some issues to generate dynamic libraries for Windows platforms. https://github.com/JuliaPackaging/Yggdrasil/pull/5280
CUTEst doesn't have a classic
Makefile
and It's quite difficult to patch it... I hope that @nimgould can help us. I updated the CI script to more easily determine the origin of the problem.