Skip to content

Conversation

@eschnett
Copy link
Contributor

@eschnett eschnett commented May 2, 2024

No description provided.

@eschnett eschnett marked this pull request as draft May 2, 2024 16:22
@eschnett eschnett marked this pull request as ready for review May 2, 2024 19:25
@eschnett
Copy link
Contributor Author

eschnett commented May 4, 2024

Something is off with Windows and shared libraries.

  • OpenSSL doesn't have any *.dll libraries, and HDF5 thus can't use it
  • HDF5 doesn't produce any *.dll libraries

@eschnett eschnett marked this pull request as draft May 5, 2024 15:31
@eschnett eschnett marked this pull request as ready for review May 6, 2024 13:25
@eschnett eschnett marked this pull request as draft May 6, 2024 14:05
@eschnett
Copy link
Contributor Author

eschnett commented May 8, 2024

@mkitti I'm stuck here. The problem seems to be that libtool doesn't want to create shared libraries on Windows. Instead, it creates static libraries. It also says that the dependencies (OpenSSL etc.) don't provide shared libraries.

@mkitti
Copy link
Contributor

mkitti commented May 8, 2024

Huh, I will take a look.

@mkitti
Copy link
Contributor

mkitti commented May 29, 2024

I'm confused why you say OpenSSL does not have any DLLs. There are at least two of them in the bin directory.

  • libssl-3-x64.dll
  • libcrypto-3-x64.dll

@eschnett
Copy link
Contributor Author

I'm not saying that... I'm saying that HDF5's configure or build script says that OpenSSL has no DLLs. I assume that's part of the problem why HDF5 doesn't build any shared libraries.

@mkitti
Copy link
Contributor

mkitti commented May 29, 2024

I'll take a closer look later today.

@Iddingsite
Copy link

Gentle bump on that one. Is there any hope or is it more tricky than expected?

@eschnett
Copy link
Contributor Author

It's a Windows problem. I can run the build script, but I can't test the resulting HDF5 libraries.

@eschnett eschnett changed the title HDF5: New version 1.14.4 HDF5: New version 1.14.5 Jan 23, 2025
@eschnett
Copy link
Contributor Author

Is the ROS3-VFD driver on Windows important?

@eschnett
Copy link
Contributor Author

The Windows build fails. I don't know why.

@Iddingsite
Copy link

Thanks a lot for trying again!

@eschnett
Copy link
Contributor Author

@mkitti Any ideas about Windows and shared libraries? The actual error message is probably

[20:38:05] *** Warning: linker path does not have real file for library -lz.
[20:38:05] *** I have the capability to make that library automatically link in when
[20:38:05] *** you link to this library.  But I can only do this if you have a
[20:38:05] *** shared version of the library, which you do not appear to have
[20:38:05] *** because I did check the linker path looking for a file starting
[20:38:05] *** with lib but no candidates were found. (...for file magic test)
[20:38:05] *** The inter-library dependencies that have been dropped here will be
[20:38:05] *** automatically added whenever a program is linked with this library
[20:38:05] *** or is declared to -dlopen it.
[20:38:05] 
[20:38:05] *** Since this library must not contain undefined symbols,
[20:38:05] *** because either the platform does not support them or
[20:38:05] *** it was explicitly requested with -no-undefined,
[20:38:05] *** libtool will only create a static version of it.

but the three files libz.a, libz.dll, and libz.dll.a exist. While configuring, the test

configure:30146: checking for compress2 in -lz
configure:30177: cc -o conftest.exe      -D_GNU_SOURCE -D__USE_MINGW_ANSI_STDIO   -D_FILE_OFFSET_BITS=64      conftest.c -lz  -lws2_32 -lm  >&5
configure:30177: $? = 0
configure:30187: result: yes

succeeds.

@eschnett
Copy link
Contributor Author

Maybe we should switch to cmake.

@mkitti
Copy link
Contributor

mkitti commented Jan 24, 2025

I do usually use cmake while building on Windows...

@eschnett
Copy link
Contributor Author

See #10347

@eschnett
Copy link
Contributor Author

eschnett commented Feb 2, 2025

Closing in favour of #10347.

@eschnett eschnett closed this Feb 2, 2025
@eschnett eschnett deleted the eschnett/HDF5-1.14.4 branch February 16, 2025 16:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants