From 202b7876b45d3dad15e463fd29940d2d321bafb5 Mon Sep 17 00:00:00 2001 From: Brandon Thomas Date: Sun, 2 Mar 2025 20:31:34 -0500 Subject: [PATCH] temp test for windows --- Cargo.lock | 1 + crates/desktop/src-tauri/Cargo.toml | 3 +++ crates/desktop/src-tauri/src/main.rs | 9 +++++++++ .../src-tauri/tests/test_dynamic_library_loading.rs | 7 +++++++ 4 files changed, 20 insertions(+) create mode 100644 crates/desktop/src-tauri/tests/test_dynamic_library_loading.rs diff --git a/Cargo.lock b/Cargo.lock index 5e4b38d0d2..29fefc7bad 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -629,6 +629,7 @@ dependencies = [ "filesys", "hf-hub 0.3.2", "image", + "libloading 0.8.6", "log", "memory_caching", "once_cell", diff --git a/crates/desktop/src-tauri/Cargo.toml b/crates/desktop/src-tauri/Cargo.toml index 89b7156aaa..ef19226127 100644 --- a/crates/desktop/src-tauri/Cargo.toml +++ b/crates/desktop/src-tauri/Cargo.toml @@ -48,3 +48,6 @@ tokenizers = "0.15.2" [features] default = ["cuda"] cuda = ["candle-core/cuda", "candle-nn/cuda", "candle-transformers/cuda"] + +[dev-dependencies] +libloading = "0.8.6" diff --git a/crates/desktop/src-tauri/src/main.rs b/crates/desktop/src-tauri/src/main.rs index ad5fe83991..92b940d462 100644 --- a/crates/desktop/src-tauri/src/main.rs +++ b/crates/desktop/src-tauri/src/main.rs @@ -1,6 +1,15 @@ // Prevents additional console window on Windows in release, DO NOT REMOVE!! #![cfg_attr(not(debug_assertions), windows_subsystem = "windows")] +use std::fs::File; + fn main() { + // NB: This is a test to see the behavior of the application with dynamic loading modules. + // We should be able to execute code before loading CUDA and other dependencies. + let r = File::create("program_started.txt"); + match r { + Err(err) => println!("Failed to create program_started.txt: {}", err), + Ok(_) => {} + } app_lib::run(); } diff --git a/crates/desktop/src-tauri/tests/test_dynamic_library_loading.rs b/crates/desktop/src-tauri/tests/test_dynamic_library_loading.rs new file mode 100644 index 0000000000..e1b34faace --- /dev/null +++ b/crates/desktop/src-tauri/tests/test_dynamic_library_loading.rs @@ -0,0 +1,7 @@ + +#[test] +fn test_dynamic_library_loading() { + let name = libloading::library_filename("cublas"); + + assert_eq!(name, "libcublas.so"); +} \ No newline at end of file