Skip to content
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

Windows X64 - dependencies binaries #319

Open
NorbertIonita opened this issue Jan 30, 2025 · 3 comments
Open

Windows X64 - dependencies binaries #319

NorbertIonita opened this issue Jan 30, 2025 · 3 comments

Comments

@NorbertIonita
Copy link

Using the "docker run ..." command I have built openslide 4.0.0.6 for Windows X64.
Unfortunately, I was not able to locate the binaries for all the dependencies used during the build (dlls, libs and header files).
Even searching for them all over the working directory have 0 results.

I would highly appreciate if I coult get help in this regard.
Thank you!

@bgilbert
Copy link
Member

bgilbert commented Feb 2, 2025

Beginning in Windows build 20231011 (in the old openslide-winbuild version numbering scheme), the dependencies are all built into the OpenSlide DLL, so you should only need that DLL plus the OpenSlide headers. Is the DLL failing to load properly for you?

@NorbertIonita
Copy link
Author

Hi, @bgilbert!

The OpenSlide DLL loads up fine. But I was using some of the dependencies myself and would like to have the same versions as the ones used to build the openslide.

Is there a way to have the DLLs of the dependencies built as well?

Thank you very much for the help!

@bgilbert
Copy link
Member

bgilbert commented Feb 8, 2025

The README tells you to build openslide-bin using bintool, but bintool is just a convenience wrapper around Meson which handles some of its quirks and knows how to test the resulting artifacts. You can also invoke Meson yourself and ask for shared libraries rather than static:

meson setup build -Ddefault_library=shared --cross-file machines/cross-windows-x64.ini
meson compile -C build
DESTDIR=dest meson install -C build

build/dest/bin will then have all the DLLs that were built, including some that aren't needed. build/dest/include will also exist, etc. build/artifacts will contain the bdist ZIP file, but that isn't useful to you because it won't include the dependencies.

You should perform the build inside the official builder container. Without bintool, nothing will stop you from building on a different Linux distro, but openslide-bin makes assumptions about the configuration of the MinGW compiler (UCRT with Win32 threading, and without various old bugs) that are difficult to satisfy on arbitrary distros.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

2 participants