我在 Ubuntu Linux 14.04 64 位中安装 Matlab 2016a 的 WFDB Toolbox,安装说明如下这里。我愿意
[old_path]=which('rdsamp');if(~isempty(old_path)) rmpath(old_path(1:end-8)); end
wfdb_url='http://physionet.org/physiotools/matlab/wfdb-app-matlab/wfdb-app-toolbox-0-9-9.zip';
[filestr,status] = urlwrite(wfdb_url,'wfdb-app-toolbox-0-9-9.zip');%Octave users may have to download manually
unzip('wfdb-app-toolbox-0-9-9.zip');
cd wfdb-app-toolbox-0-9-9;cd mcode
addpath(pwd);savepath
我遇到权限问题
Warning: Unable to save path to file '/usr/local/MATLAB/R2016a/toolbox/local/pathdef.m'. You
can save your path to a different location by calling SAVEPATH with an input argument that
specifies the full path. For MATLAB to use that path in future sessions, save the path to
'pathdef.m' in your MATLAB startup folder.
我想保存到错误中指示的默认位置,即每个用户的 pathdef.m 文件。
thrig的回答结果
- 适用于最新更新的 Ubuntu 16.04 64 位
- 不适用于 OS X El Capitan。
在航站楼执行
echo "export MATLAB_USE_USERWORK=1" >> $HOME/.bashrc
matlab -nodesktop -nosplash -r \
"userpath('/home/masi/Documents/bin/matlab/'); exit;"
最终设置
if (exist('old_path', 'var') == 0)
home='/home/masi/';
[old_path]=which('rdsamp');if(~isempty(old_path)) rmpath(old_path(1:end-8)); end
wfdb_url='http://physionet.org/physiotools/matlab/wfdb-app-matlab/wfdb-app-toolbox-0-9-9.zip';
[filestr,status] = urlwrite(wfdb_url,'wfdb-app-toolbox-0-9-9.zip');%Octave users may have to download manually
unzip('wfdb-app-toolbox-0-9-9.zip');
cd(fullfile(home, 'wfdb-app-toolbox-0-9-9', 'mcode'));
addpath(fullfile(home, 'wfdb-app-toolbox-0-9-9/mcode/')); % me
%addpath(fullfile('wfdb-app-toolbox-0-9-9', 'mcode'));
% Bug command sets userpath to '', why? http://stackoverflow.com/q/38283814/54964
%savepath(fullfile(home, 'pathdef.m')); % ~/pathdef.m originally
end
如何在 Matlab 2016a 中通过每用户 pathdef.m 文件安装 WFDB?
答案1
您可以(暂时)为用户分配对该文件的写入权限,例如,sudo chown youruseraccount /usr/local/MATLAB/R2016a/toolbox/local/pathdef.m
然后进行安装,然后将权限更改回来。但如果您缺乏这样做的特权,这将不会成功。另一种选择是更改savepath
调用以编写自定义pathdef.m
:
$ cd
$ matlab
...
>> mkdir wfdb
>> cd wfdb
>> [old_path]=which('rdsamp');if(~isempty(old_path)) rmpath(old_path(1:end-8)); end
...
>> savepath ~/pathdef.m
>> exit
...
$ matlab
...
>> wfdb
这假设您的主目录是 matlab 的启动文件夹,尽管pathdef.m
可以将其保存到其他目录并且 matlab 从该目录启动,或者在 matlab 首选项中更改初始文件夹路径。