abetlen / abetlen/llama-cpp-python

Incorrect winmode in load_shared_library

Open
#1,993 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
10.6k
Forks
1.4k
PR merge metrics
PR metrics pending

Description

In the method load_shared_library the winmode specification is incorrect.

The actual code is:
```
cdll_args["winmode"] = ctypes.RTLD_GLOBAL
```

ctypes.RTLD_GLOBAL is not a value for winmode but only for mode argument.
The documentation is correct at https://docs.python.org/3/library/ctypes.html but confusing.

> The winmode parameter is used on Windows to specify how the library is loaded (since mode is ignored). It takes any value that is valid for the Win32 API LoadLibraryEx flags parameter

The correct value should be None to use the default dll searching by ctype

Specifiy RTLD_GLOBAL (that is 0) will make the LoadLibraryEx search the dlls as the normal LoadLibrary function, behaving incorrectly and eventually not finding the dependencies.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.