跳转到内容

SPM/在 Mac OS(PowerPC)上安装

来自维基教科书,开放的书,为开放的世界
< SPM

SPM12 不支持 Mac PowerPC。

SPM8 不正式支持 Mac PowerPC,因为此平台即将被淘汰(参见 MATLAB 平台路线图)。这意味着预编译的 MEX 文件(*.mexmac)未包含在 SPM 发行版中。但是,您应该可以自己相对轻松地编译它们。

下载 spm8.zip 及其更新 spm8_updates_rxxxx.zip 到您的主目录,然后在终端中输入以下内容

cd /Users/login
unzip spm8.zip
unzip -o spm8_updates_rxxxx.zip -d spm8

启动 MATLAB 并将 SPM 添加到您的路径中,可以使用文件 > 设置路径 > 添加文件夹... 或输入

addpath /Users/login/spm8

在 MATLAB 工作区中。

您需要安装 Apple 的开发环境 Xcode。它应该可以在您的 Mac OS X 安装 DVD 上获得。

您还需要在系统路径中拥有mex 可执行文件。为此,请在终端中输入以下内容

export PATH=$PATH:/Applications/MATLAB/bin

使用安装 MATLAB 的相应路径。

在终端中,从 SPM8 安装的src 文件夹中输入

cd /Users/login/spm8/src
make distclean
make && make install
make toolbox-distclean
make toolbox && make toolbox-install
make external-distclean
make external && make external-install

Mac PowerPC 的预编译 MEX 文件(*.mexmac)在最新的更新中可用。

下载 spm5.zip 到您的主目录,然后在终端中输入以下内容

cd /Users/login
unzip spm5.zip

启动 MATLAB 并将 SPM 添加到您的路径中,可以使用文件 > 设置路径 > 添加文件夹... 或输入

addpath /Users/login/spm5

在 MATLAB 工作区中。

如果您想自己编译 SPM5 MEX 文件,则需要安装 Xcode 并且在系统路径中拥有mex(有关详细信息,请参见 SPM8)。

然后,在终端中,从 SPM5 安装的src 文件夹中输入

cd /Users/login/spm5/src
make distclean
make && make install

Mac PowerPC 的预编译 MEX 文件(*.mexmac)在最新的更新中可用。

注意。以下某些命令需要您以 root 用户身份登录或使用“sudo”模式。

假设您的 Matlab 和 SPM2 文件夹(例如,“MATLAB”和“spm2”)位于您的应用程序文件夹中

(1) 确保您使用的是早于 3.3 版本的 gcc(使用 gcc3.3 编译 spm2 时,调用 mex 会失败;显然存在库冲突)

   (sudo) gcc_select 3

(2) 将 MATLAB/bin 中的“mex”文件创建符号链接到 /usr/sbin/ 中(!!!不要放在 usr/local/bin 中)

   (sudo) ln -s /.../Applications/MATLAB/bin/mex   /usr/sbin/mex

(3) 重新编译 SPM2

   cd /.../Applications/spm2
   make MAC

您应该看到以下类似的行

   make all SUF=mexmac RANLIB="ranlib spm_vol_utils.mexmac.a"
   _________________________________________________
   Unix compile for MacOS X
   _________________________________________________
   mex -O -c spm_mapping.c
   mv spm_mapping.o spm_mapping.mexmac.o
   rm -f spm_vol_utils.mexmac.a
   ar rcv spm_vol_utils.mexmac.a utils_uchar.mexmac.o utils_short.mexmac.o
   utils_int.mexmac.o utils_schar.mexmac.o utils_ushort.mexmac.o 
   utils_uint.mexmac.o utils_float.mexmac.o utils_double.mexmac.o 
   utils_short_s.mexmac.o utils_int_s.mexmac.o utils_ushort_s.mexmac.o
   utils_uint_s.mexmac.o utils_float_s.mexmac.o utils_double_s.mexmac.o 
   spm_make_lookup.mexmac.o spm_getdata.mexmac.o spm_vol_access.mexmac.o 
   spm_mapping.mexmac.o 
   a - utils_uchar.mexmac.o
   a - utils_short.mexmac.o
   ... (a long long list of files)
   _________________________________________________
   FINISHED
   _________________________________________________
华夏公益教科书