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

Load stdlib JLLs by path #55478

Open
topolarity opened this issue Aug 12, 2024 · 0 comments
Open

Load stdlib JLLs by path #55478

topolarity opened this issue Aug 12, 2024 · 0 comments
Labels
JLLs stdlib Julia's standard library

Comments

@topolarity
Copy link
Member

Loading Julia as a library currently fails on Windows, e.g., in the case that the loading application provides a conflicting library (e.g. an incompatible version of libssh). In that case, the application binary's directory takes precedence over most other DLL search paths, including everywhere that Julia can install its dependencies.

This means that even though Julia is requesting the library to be loaded, the correct file is available, and no conflicting library is actually loaded into memory yet, our LoadLibrary call gets confused and ends up loading the incompatible version.

The fix is pretty simple (although incomplete, since it does not fix the case that the loading application actually already loaded its conflicting library). We need to make sure we provide a proper path to LoadLibrary, at least when none of the USE_SYSTEM_* flags apply.

@staticfloat has already laid out a lot of the groundwork needed for this in #50687, but that work won't land until BB2 is good and ready

This issue is for making just the loading path change early, before fully lazy JLLs are available.

@nsajko nsajko added the stdlib Julia's standard library label Aug 15, 2024
@giordano giordano added JLLs and removed stdlib Julia's standard library labels Aug 15, 2024
@topolarity topolarity added the stdlib Julia's standard library label Oct 7, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
JLLs stdlib Julia's standard library
Projects
None yet
Development

No branches or pull requests

3 participants