Install required runtime dlls to package directory on windows
This commit is contained in:
parent
acf18fcdf0
commit
8d75016549
3 changed files with 12 additions and 3 deletions
|
@ -1,4 +1,4 @@
|
||||||
cmake_minimum_required(VERSION 3.4...3.22)
|
cmake_minimum_required(VERSION 3.21)
|
||||||
|
|
||||||
project(llama_cpp)
|
project(llama_cpp)
|
||||||
|
|
||||||
|
@ -33,4 +33,13 @@ if (LLAMA_BUILD)
|
||||||
FRAMEWORK DESTINATION ${CMAKE_CURRENT_SOURCE_DIR}/llama_cpp
|
FRAMEWORK DESTINATION ${CMAKE_CURRENT_SOURCE_DIR}/llama_cpp
|
||||||
RESOURCE DESTINATION ${CMAKE_CURRENT_SOURCE_DIR}/llama_cpp
|
RESOURCE DESTINATION ${CMAKE_CURRENT_SOURCE_DIR}/llama_cpp
|
||||||
)
|
)
|
||||||
|
# Workaround for Windows + CUDA https://github.com/abetlen/llama-cpp-python/issues/563
|
||||||
|
install(
|
||||||
|
FILES $<TARGET_RUNTIME_DLLS:llama>
|
||||||
|
DESTINATION ${SKBUILD_PLATLIB_DIR}/llama_cpp
|
||||||
|
)
|
||||||
|
install(
|
||||||
|
FILES $<TARGET_RUNTIME_DLLS:llama>
|
||||||
|
DESTINATION ${CMAKE_CURRENT_SOURCE_DIR}/llama_cpp
|
||||||
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
|
@ -58,7 +58,7 @@ def _load_shared_library(lib_base_name: str):
|
||||||
if "CUDA_PATH" in os.environ:
|
if "CUDA_PATH" in os.environ:
|
||||||
os.add_dll_directory(os.path.join(os.environ["CUDA_PATH"], "bin"))
|
os.add_dll_directory(os.path.join(os.environ["CUDA_PATH"], "bin"))
|
||||||
os.add_dll_directory(os.path.join(os.environ["CUDA_PATH"], "lib"))
|
os.add_dll_directory(os.path.join(os.environ["CUDA_PATH"], "lib"))
|
||||||
cdll_args["winmode"] = 0
|
cdll_args["winmode"] = ctypes.RTLD_GLOBAL
|
||||||
|
|
||||||
# Try to load the shared library, handling potential errors
|
# Try to load the shared library, handling potential errors
|
||||||
for _lib_path in _lib_paths:
|
for _lib_path in _lib_paths:
|
||||||
|
|
|
@ -54,7 +54,7 @@ all = [
|
||||||
[tool.scikit-build]
|
[tool.scikit-build]
|
||||||
wheel.packages = ["llama_cpp"]
|
wheel.packages = ["llama_cpp"]
|
||||||
cmake.verbose = true
|
cmake.verbose = true
|
||||||
cmake.minimum-version = "3.12"
|
cmake.minimum-version = "3.21"
|
||||||
minimum-version = "0.5"
|
minimum-version = "0.5"
|
||||||
sdist.exclude = [".git", "vendor/llama.cpp/.git"]
|
sdist.exclude = [".git", "vendor/llama.cpp/.git"]
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue