gpt4 book ai didi

Matlab 以编程方式将 native 库添加到路径

转载 作者:行者123 更新时间:2023-12-04 19:36:54 25 4
gpt4 key购买 nike

背景

我有一个 Matlab 代码库(或 App 现在有 r2012b),我分发给用户。

此应用将 JNI 与 native 库(多个 .dll 文件)结合使用。在我的本地机器上,这需要 librarypath.txtjavalibrarypath.txt (r2012b) 文件中的条目,如 Mathworks 所述。和 Undocumented Matlab .

问题

有没有办法以编程方式将 native 库添加到 Matlab java 类路径?

我想编写一个initMyLibrary.m 脚本,其中:

  • 用户不必手动修改这些文件。
  • 该代码可用作已编译的 MCR 应用程序。
  • init 不会破坏用户现有的 javalibrarypath.txt
  • 假设没有管理员权限(不能修改 Matlab 基础安装)。

有什么想法吗?

最佳答案

这可能很困惑,我不是这方面的专家,但这样的东西不会在你的 initMyLibrary.m 中工作:

currentdir = pwd; % or any other directory you know the dll will be in
if ispc
system(['setx path "%path%;' currentdir '"']); % only works from windows 7 onwards though, for xp or vista youll have to change the registry with reg
elseif isunix
system(['export PATH=$PATH:' currentdir]); % dont know if this works without admin rights though...
elseif ismac
% for mac I dont know how to do this without admin rights
else
error('whatever') % error handling
end

因为我认为如果您的 dll 在系统路径上应该没问题,不是吗?不要忘记在应用程序末尾恢复路径。

无论如何,所有这些都可能有点危险......

关于Matlab 以编程方式将 native 库添加到路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13865285/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com