SPM/在 Mac OS (Intel) 上安裝
SPM 華夏公益教科書已遷移至https://www.fil.ion.ucl.ac.uk/spm/docs/ |
如果您在 *Finder* 中使用拖放來安裝更新,它實際上會執行資料夾複製,而不是資料夾合併,以便更新的檔案將被覆蓋,但未更改的舊檔案將被刪除(請參閱此執行緒)。使用下面描述的命令列選項將克服這個問題。
SPM12 不正式支援 Mac Intel 與 32 位 MATLAB,因為該平臺即將被淘汰(請參閱MATLAB 平臺路線圖)。這意味著預編譯的 MEX 檔案 (*.mexmaci) 不包含在 SPM 發行版中。
您應該能夠自己編譯 MEX 檔案,前提是您編輯 spm12/src/Makefile.var 使其在 MacOS 部分使用 mexmaci 而不是 mexmaci64。
Mac Intel 與 32 位 MATLAB 是一個支援 SPM8 的平臺。預編譯的 MEX 檔案 (*.mexmaci) 包含在 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 工作區中。
如果您想編譯 SPM MEX 檔案(如果您使用的是 Mac OS X 10.4 (Tiger),則當前可能會發生),則有兩個要求
- 您需要安裝 Apple 的開發環境Xcode。它應該在您 Mac 附帶的“Mac OS X 安裝”DVD 中。導航到“*可選安裝*”,然後導航到“*Xcode 工具*”,雙擊“*Xcode 工具*”包進行安裝。如果您稍後發現 *make* 是一個 *未找到的命令*,您將知道需要安裝此工具。
- 您還需要在系統路徑中包含 *mex* 可執行檔案。為此,請在終端中鍵入以下內容
export PATH=$PATH:/Applications/MATLAB74/bin
使用安裝 MATLAB 的適當路徑。如果您使用的是其他 shell,則確切的語法可能有所不同。
然後,在終端中,從 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 OS X 10.5 編譯並希望保持與 Mac OS X 10.4 的相容性時,建議設定預處理器宏
export MACOSX_DEPLOYMENT_TARGET=10.4
Mac Intel 與 32 位 MATLAB 的預編譯 MEX 檔案 (*.mexmaci) 包含在 SPM 發行版中。
下載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
按照 UNIX 系統的預設安裝步驟進行操作。
Mac Intel 與 32 位 MATLAB 的預編譯 MEX 檔案 (*.mexmaci) 可作為額外軟體包提供
要在 Intel Mac 上執行 SPM2,您需要對 spm_platform.m 檔案進行一些更改。這些更改相對簡單,與 Intel Mac 將自身標識為 MACI(而不是 MAC)以及大端和小端問題有關。
首先,將 MACI 新增到平臺定義列表中。在 spm_platform.m 檔案中,您將看到一個類似於以下內容的列表
PDefs = { 'PCWIN', 'win', 0;...
'PCWIN64', 'win', 0;...
'MAC', 'unx', 1;...
'SUN4', 'unx', 1;...
'SOL2', 'unx', 1;...
'HP700', 'unx', 1;...
'SGI', 'unx', 1;...
'SGI64', 'unx', 1;...
'IBM_RS', 'unx', 1;...
'ALPHA', 'unx', 0;...
'AXP_VMSG', 'vms', Inf;...
'AXP_VMSIEEE', 'vms', 0;...
'LNX86', 'unx', 0;...
'GLNX86', 'unx', 0;...
'GLNXA64', 'unx', 0;...
'VAX_VMSG', 'vms', Inf;...
'VAX_VMSD', 'vms', Inf };
只需新增一行,如下所示
'MACI', 'unx', 0;...
最後,在 spm_platform.m 檔案的底部,您需要在支援的平臺列表中新增 MACI
case {'SUN4','SOL2','HP700','SGI','SGI64','IBM_RS','ALPHA','LNX86','GLNX86','GLNXA64','MAC', 'MACI'}
如果您想自己編譯 MEX 檔案,請從以下位置下載更新的 Makefile 和 spm_platforms.m 檔案
並按照其中提供的說明操作(它們已更新為 Snow Leopard)。