Permission error for PREFDIR when running a stand-alone application on a different system
Show older comments
Hi!
I am trying to run a stand-alone application compiled on Linux on another Linux system. However, I am running into issues because it seems like at some point the Matlab preference folder is being accessed. However, since this folder does not exist on this system, it returns an error. I am now wondering why prefdir is included in the compiled version and how I can circumvent the stand-alone application to rely on it.
Error:
Unable to access preferences folder /home/[USERNAME]/.matlab/R2022a. Preferences folder must be writable.
Thank you!
4 Comments
Walter Roberson
on 9 Mar 2023
Does your code call setpref() or savepath() or the image processing toolbox options function? (sympref would also be a concern except it cannot be compiled)
Walter Roberson
on 10 Mar 2023
Answers (2)
Jan
on 9 Mar 2023
0 votes
If the preferences folder is hardcoded, such problems occur. Search in the code for the name of the folder an replace it by the command prefdir.
7 Comments
Clara
on 9 Mar 2023
Jan
on 9 Mar 2023
Another idea is to insert some code tocreate the preferences folder on demand:
pref = prefdir();
if ~isfolder(pref)
mkdir(pref);
end
Clara
on 10 Mar 2023
Jan
on 10 Mar 2023
savepath should not occur in a compiled application.
Clara
on 10 Mar 2023
Walter Roberson
on 10 Mar 2023
I don't think so. addpath should only affect memory.
Clara
on 10 Mar 2023
Categories
Find more on Standalone Applications in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!