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

[openssl] libcrypto-3-x64.dll relie on absolute path for legacy.dll #36482

Open
cvermot opened this issue Jan 30, 2024 Discussed in #36403 · 0 comments
Open

[openssl] libcrypto-3-x64.dll relie on absolute path for legacy.dll #36482

cvermot opened this issue Jan 30, 2024 Discussed in #36403 · 0 comments
Assignees
Labels
category:port-bug The issue is with a library, which is something the port should already support

Comments

@cvermot
Copy link

cvermot commented Jan 30, 2024

Library

OpenSSL 3.2.0 used to build PoDoFo 0.10.3

Architecture

x64-windows

Build env

Tested on Windows 10 22H2 and Windows 11 23H2
vcpkg 2024-01-11-710a3116bbd615864eef5f9010af178034cb9b44

Problem : Discussed in #36403

Originally posted by cvermot January 27, 2024

I used vcpkg to deploy PoDoFo library in a MSVC project. This library use among other things openssl.
When I execute my application on my dev machine, all is working. When I deploy this app on my target machine, I get an error "The application was unable to start correctly (0xc0000142)".

I first thought that it was a DLL problem, so I double checked that all required DLL was on my app side. Everything seemed to be there.

I used Dependency Walker's profiling function which gave me the answer: the openSSL libcrypto-3-x64.dll library rely on legacy.dll, which seems to be linked with the absolute path of my vcpkg installation on my development computer (DW give me the exact path of legacy.dll on my dev computer) ! If I recreate on my target computer the exact path of legacy.dll on my development computer, my app run !

DW error :

DllMain(0x00007FFD7F430000, DLL_PROCESS_ATTACH, 0x000000EEE40FF3A0) in "PODOFO.DLL" called.
LoadLibraryA("C:\vcpkg\packages\openssl_x64-windows\bin\legacy.dll") called from "LIBCRYPTO-3-X64.DLL" at address 0x00007FFD79D5E72E.
LoadLibraryA("C:\vcpkg\packages\openssl_x64-windows\bin\legacy.dll") returned NULL. Error: Le module sp_cifi_ est introuvable (126).
@Cheney-W Cheney-W added the category:port-bug The issue is with a library, which is something the port should already support label Jan 31, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category:port-bug The issue is with a library, which is something the port should already support
Projects
None yet
Development

No branches or pull requests

2 participants