use elf_loader::load_dylib;
use std::collections::HashMap;
fn main() {
fn print(s: &str) {
println!("{}", s);
}
let mut map = HashMap::new();
map.insert("print", print as _);
let pre_find = |name: &str| -> Option<*const ()> { map.get(name).copied() };
let liba = load_dylib!("target/liba.so")
.unwrap()
.easy_relocate([], &pre_find)
.unwrap();
let f = unsafe { liba.get::<fn() -> i32>("a").unwrap() };
println!("{}", f());
}