fn load_dylib(path: &Path, max_attempts: usize) -> Result<Library, String>