Closed lmiq closed 1 year ago
We have compiled versions for Windows albeit not recently. We'll investigate. Note that the developers are on vacation now.
Looking at your script I assume you're using mingw to build on Windows? I'm not sure if that is going to work. We use MSVC 2019 to build windows executables.
And the fact that you get turns and not e.g. all loops makes things even more complex.
Libcifpp comes with its own set of tests. Do these pass?
The exact build script can be found here: https://github.com/JuliaPackaging/Yggdrasil/blob/master/D/DSSP/build_tarballs.jl, which uses these patches https://github.com/JuliaPackaging/Yggdrasil/tree/master/D/DSSP/bundled/patches
MinGW is indeed used to build for windows (x86_64-w64-mingw32
and i686-w64-mingw32
).
Julia's BinaryBuilder currently uses cross-compilation with a x86_64-linux-musl
host environment, and currently it's only possible to run the tests if the target platform is equal to the host platform. While the tests pass on x86_64-linux-musl
, it's not possible to automatically test this for other target platforms during the build.
I can try and compile with the mingw toolchain on windows and see if the tests pass for dssp and libcifpp. Not sure if we are doing something wrong in the build script, or perhaps something is going wrong due to cross-compilation.
And the fact that you get turns and not e.g. all loops makes things even more complex.
My mistake here. It is all-loops indeed.
Could you test with the binary in release 4.4.0 (https://github.com/PDB-REDO/dssp/releases/tag/v4.4.0) to see if that reproduces your problem?
This is now resolved. We are using the pre-built binaries on windows and so far everything seems to work well.
The binaries built for MinGW were segfaulting when run on a pdb file, perhaps due to the issues with std::regex as mentioned in the libcifpp build instructions. As we are cross-compiling, the check in the libcifpp cmake file couldn't catch this issue at build time. Perhaps in the future the Julia BinaryBuilder cross-compiling environment will be improved to use wine or qemu to be able to run these build-time tests.
Thank you very much for the pre-built windows binary!
We have packed DSSP into a Julia package, which provides binaries for all platforms.
The binaries are built with BinaryBuilder.jl following some more or less standard instructions.
We are experiencing problems on the Windows builds. Basically, DSSP is returning all-turns, instead of the expected classes, for the unit tests.
I would like to ask if you have any experience in compiling DSSP for Windows, to maybe give us some insight into what may be going wrong. We are not sure if the issue is on DSSP itself or with our compilation.
Thank you all