Updated DLL
Fixed DLL loading issues with Linux
This commit is contained in:
parent
5d17c3eeed
commit
5da0c7f397
6 changed files with 25 additions and 4 deletions
16
src/main.rs
16
src/main.rs
|
@ -1,10 +1,20 @@
|
|||
extern crate libloading;
|
||||
|
||||
fn main() {
|
||||
let lib = unsafe { match libloading::Library::new("harmony_link_core.dll") {
|
||||
// Use `cfg!` macro to detect OS
|
||||
let lib_path = if cfg!(target_os = "windows") {
|
||||
"harmony_link_core.dll"
|
||||
} else if cfg!(target_os = "linux") {
|
||||
"libharmony_link_core.so"
|
||||
} else {
|
||||
eprintln!("Unsupported OS");
|
||||
return;
|
||||
};
|
||||
|
||||
let lib = unsafe { match libloading::Library::new(lib_path) {
|
||||
Ok(lib) => lib,
|
||||
Err(err) => {
|
||||
eprintln!("Error loading DLL: {}", err);
|
||||
eprintln!("Error loading dynamic library: {}", err);
|
||||
return;
|
||||
},
|
||||
}
|
||||
|
@ -14,7 +24,7 @@ fn main() {
|
|||
let func: libloading::Symbol<unsafe extern "C" fn()> = match lib.get(b"start") {
|
||||
Ok(func) => func,
|
||||
Err(err) => {
|
||||
eprintln!("Error finding function in DLL: {}", err);
|
||||
eprintln!("Error finding function in dynamic library: {}", err);
|
||||
return;
|
||||
}
|
||||
};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue