Fix finding and linking libssh2 #6602
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This reverts the regression from #6586, and addresses the real issue.
On Windows, libssh2 depends on a few win32 system dlls such as
ws2_32
that we need to pass to the linker:# pkg-config --libs libssh2 -L/ucrt64/lib -lssh2 -lssl -lcrypto -lws2_32 -lgdi32 -lcrypt32
The linker understands this, but somehow the cmake check
find_library
does not find these windows dlls and fails:The change in #6586 masks the problem by not finding libssh2 at all anymore (by looking for the wrong lib name). This makes no sense, the
.pc
name islibssh2
and notssh2
, so we need to revert this.This address the underlying problem, perhaps we can just warn instead of fail if cmake is unable to validate one of the libs.
Reverts #6586. Fixes #5981 for real.
@Faless