How to load multiple paths using 'loadlibrary'?

2 Ansichten (letzte 30 Tage)
I am using "loadlibrary" function to load a C++ library in MATLAB, and I have a lot of paths to include for the "includepath" parameter.
Currently, I can only use the following way to include these paths:
>> loadlibrary(..., 'includepath', path1, 'includepath', path2, 'includepath', path3, ...);
The 'includepath' doesn't accept a path array or a wildcard. Is there an easier way to include multiple paths?

Akzeptierte Antwort

MathWorks Support Team
MathWorks Support Team am 13 Jan. 2021
"loadlibrary" processes the input parameters individually, so arrays or wildcards will not work.
However, it may be possible to write a small script to process an array of pathnames and generate a "loadlibrary" command string that can be implemented with "eval".
Here's a simple example:
paths = genpath('\path\to\libraries');
pathArr = split(paths, ';');
includeStr = "loadlibrary('yourlib', 'yourlib.m'";
for i = 1:length(pathArr)
    includeStr = strcat(includeStr, ",'includepath','",pathArr(i),"'");
end
includeStr = strcat(includeStr, ");");
eval(includeStr);
The 'includeStr' should include all the paths we would like to input to 'loadlibrary' function and then, we can simply call it using 'eval'.

Weitere Antworten (0)

Tags

Noch keine Tags eingegeben.

Produkte


Version

R2019b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by