跳轉到內容

SPM/獨立版

來自華夏公益教科書,自由的教科書
< SPM

SPM 獨立版是使用 MATLAB Compiler 編譯的 SPM 版本,因此不需要 MATLAB 許可證(您可能想先檢視 這裡 是否可以訪問 MATLAB 校園許可證)。

SPM12 的獨立版 可從 SPM 網站下載(選擇“SPM 獨立版”作為“SPM 版本”)。如果您需要幫助,請聯絡 fil.spm@ucl.ac.uk

根據您的請求,您將獲得以下元件的下載說明

  • MATLAB 執行時:它包含一組庫,用於啟用編譯的 MATLAB 應用程式的執行。您需要安裝與您的平臺(Windows、Linux 或 macOS)以及用於編譯 SPM 的版本相對應的執行時。預設 SPM 獨立版需要 MATLAB R2010a 的 MATLAB Compiler Runtime (MCR) 7.13,該版本可從您將獲得的連結中的 MCR 資料夾中獲得。否則,您可以從 這裡 下載更新的 MATLAB 執行時。
  • SPM 獨立版 本身包含編譯的 SPM,作為 ZIP 檔案。

MATLAB 執行時安裝

[編輯 | 編輯原始碼]

即使您使用多個版本的獨立版 SPM,您也只需要執行此操作一次。

執行您下載的 MCRInstaller 可執行檔案並按照說明操作。

Windows 安裝需要具有管理員許可權,您可能還需要安裝 Visual C++ Redistributable Package (vcredist_*.exe),該軟體包與 MCRInstaller 位於同一資料夾中。我們還建議您在此處重新啟動 Windows。

如果您遇到問題或想了解更多資訊,請參閱

要從命令列在 Linux 上安裝 MCR,請輸入

chmod 755 MCRInstaller.bin
./MCRInstaller.bin -P bean421.installLocation="MCR" -silent

SPM 獨立版安裝

[編輯 | 編輯原始碼]
  • 將包含 SPM 獨立版的 spm12_rxxx.zip 存檔解壓縮到適當的資料夾中。它包含許多針對每個支援平臺的小型可執行檔案以及一個大型 spm12.ctf 檔案,其中包含編譯後的 SPM12 版本。
  • 獨立版應用程式首次執行時,CTF 檔案將被解壓縮到子資料夾中,因此,如果您將 CTF 安裝到需要寫入訪問許可權的管理員許可權的資料夾中,則應在這些許可權下執行該應用程式一次 - 參見下文。
  • Mac 上,您還需要解壓縮 spm12_maci64.zip 存檔。

要啟動 SPM 圖形使用者介面

  • 在 Windows 上:雙擊 spm12_wxx.exe
  • 在 Linux 上,請輸入
./run_spm12.sh /usr/local/MATLAB/MATLAB_Compiler_Runtime/v713/

其中引數是 MCR 安裝的路徑。

  • 在 Mac 上,請輸入
./run_spm12.sh /Applications/MATLAB/MATLAB_Compiler_Runtime/v713/

其中引數是 MCR 安裝的路徑。

第一次執行應該需要更長時間才能啟動,因為 CTF 檔案將被解壓縮。在系統範圍內安裝 SPM 時,您應該以 root 身份執行第一次解壓縮執行,即

./run_spm12.sh /usr/local/MATLAB/MATLAB_Compiler_Runtime/v713/ quit

在 Linux/Mac 上,您可以編輯 Shell 指令碼 run_spm12.sh 以硬編碼 MCR 安裝的位置,從而無需在命令列中提供它。

可以使用的其他引數是模態(如 `spm fmri`)或關鍵字 `batch` 以直接啟動批處理系統視窗,例如

./run_spm12.sh /Applications/MATLAB/MATLAB_Compiler_Runtime/v713/ fmri
./run_spm12.sh /Applications/MATLAB/MATLAB_Compiler_Runtime/v713/ batch

此外,`batch` 後跟批處理檔名 (*.mat*.m) 將啟動 SPM,執行批處理並退出

./run_spm12.sh /Applications/MATLAB/MATLAB_Compiler_Runtime/v713/ batch mybatch.mat

故障排除

[編輯 | 編輯原始碼]
  • 為什麼我會收到關於缺少 mclmcrrt7x.dll 的錯誤?

首先嚐試重新啟動計算機,如果您還沒有重啟,因為即使路徑設定正確,Windows 也可能無法找到此 dll,如果它沒有重啟。如果您仍然遇到問題,請參閱:http://www.mathworks.com/support/solutions/en/data/1-1IW46N/

  • 如果我收到錯誤“無法獲得 CTF 目錄的獨佔鎖,因為檔案訪問錯誤。”怎麼辦?

您需要將變數 MCR_INHIBIT_CTF_LOCK 設定為 1,請參閱 這裡

  • 如果我在 Mac 上收到錯誤“readlink:非法選項 -- f”怎麼辦?

更改 run_spm12.sh 的最後一行,使其讀取

`dirname $0`/${MACAPP}spm12_${MWE_ARCH} $*
  • 如何使用單個計算執行緒使用獨立版?

所有最近版本的獨立版 SPM 都是使用 "-R -singleCompThread" 標誌在 mcc 中編譯的,因此它們在執行時將使用單個執行緒。

之前的版本 r4290 沒有使用此編譯選項,因此您可能希望讓您的 MATLAB 指令碼以 maxNumCompThreads(1); 開始,以獲得相同的效果。

  • 為什麼我會收到警告“程序管理器已初始化 -- 無法完全啟用無頭模式。”然後在 Mac OS 上崩潰?

嘗試安裝 XQuartz(您必須在安裝 XQuartz 後登出並重新登入)。

  • 如果我收到錯誤“錯誤:libXp.so.6:無法開啟共享物件檔案:沒有此檔案或目錄”怎麼辦?

您需要在 Linux 平臺上安裝包含 libXp 的軟體包

yum install libXp.x86_64

如果您在 Ubuntu 上找不到此軟體包,請嘗試手動安裝 libXp(編譯可能需要安裝軟體包 autoconf autogen xutils-devx11proto-print-dev

git clone git://anongit.freedesktop.org/xorg/lib/libXp
cd libXp
./autogen.sh
./configure
make
sudo make install

或者,您可以找到適用於 UbuntuDebian 的軟體包,這些軟體包可以在下載後使用 dpkg -i libxp6_1.0.2-2_amd64.deb 安裝。

  • 如果我收到錯誤“此程序試圖透過路徑將專案從 Time Machine 中排除,但沒有管理員許可權。這不受支援。”怎麼辦?

以 root 身份執行獨立版一次,即使用 sudo 啟動命令列。

  • 為什麼我在 Mac 上收到錯誤“庫未載入:/usr/X11/lib/libXext.6.dylib”?

請檢視 [1],您可能需要重新安裝 XQuartz

  • 為什麼獨立版 SPM 在啟動 GUI 時會崩潰?

這是 這裡 討論的,可以透過在 run_spm12.sh 中新增以下內容來解決

SPM_HTML_BROWSER=0

常見問題解答

[編輯 | 編輯原始碼]
  • 它會執行得更快嗎?

不:https://www.mathworks.com/matlabcentral/answers/94695

  • 是否可以新增其他 SPM 工具箱?

不:只有核心 SPM 工具箱可用,貢獻的 SPM 工具箱不存在,也不能在不進行全面重新編譯的情況下新增。

  • 如何自己編譯 SPM 獨立版?

請檢視 SPM 安裝中的 config/spm_make_standalone.mspm_standalone.m

開啟 MATLAB,在命令列中,新增 SPM 目錄的路徑(如果還沒有新增),執行 spm_jobman('initcfg'),然後執行 spm_make_standalone。編譯過程需要幾分鐘。預設情況下,新編譯的獨立版 SPM 將儲存在 standalone 目錄中。

  • 如何在桌面上建立快捷方式以更快地啟動?

在 Linux 上,要實現選單項,您可以安裝相應的 .desktop 檔案和 SPM 的圖示檔案。例如,將以下內容儲存為 spm12.desktop(根據您的需要/MCR 版本進行修改)

 [Desktop Entry]
 Name=spm12
 GenericName=SPM12
 Comment=Statistical Parametric Mapping
 Exec=/usr/local/SPM/spm12/run_spm12.sh /usr/local/MATLAB/MATLAB_Compiler_Runtime/v713
 Icon=spm
 Terminal=false
 Type=Application
 Categories=Education;Science;

此外,從 https://www.fil.ion.ucl.ac.uk/spm/favicon.ico 獲取 SPM 圖示,並將其轉換為 png 檔案,將其命名為 spm.png(這是 .desktop 檔案中提到的圖示)。

然後(需要 xdg-utils 軟體包)在終端中執行

 xdg-desktop-menu install --novendor spm12.desktop
 xdg-icon-resource install --novendor --size 32 spm.png

要解除安裝桌面和圖示檔案,請執行

 xdg-icon-resource uninstall --size 32 spm
 xdg-desktop-menu uninstall spm12.desktop

MATLAB Compiler Toolbox 演示

MATLAB Compiler Toolbox 文件

MATLAB Compiler 支援頁面

華夏公益教科書