2015年12月28日

Python - 安裝 RunSnakeRun 於 Mac OS X 上 ( Install RunSnakeRun on Mac OS X )

為了深入瞭解 Python 程式效能,我們可以利用許多工具來測試,如:cProfile、RunSnakeRun。自己在安裝 RunSnakeRun 時遇到一些問題,因此藉由本篇文章記錄 RunSnakeRun 如何安裝、使用於 Mac OS X 上。( If you want to read this article in English, you can visit here )



安裝 RunSnakeRun 與 SquareMap
要讓 RunSnakeRun 在 Mac 上運行,我們需要安裝以下項目:RunSnakeRunSquraeMapwxPythonwxmac。首先,我們可透過 pip 來安裝 SquareMap 跟 RunSnakeRun。指令如下:
# 搜尋套件
pip search SquareMap RunSnakeRun

# 安裝套件
pip install SquareMap RunSnakeRun


安裝 wxPython 與 wxmac
上面提到 RunSnakeRun 需要 wxPython 套件,而安裝 wxPython 在 Mac OS X 上也是我遇到最多問題的地方。幸運地是,在 Mac OS X 上你可以使用 Homebrew 安裝 wxPython。若對 Homebrew 不暸解的話,投資一些時間在這個套件工具上對未來開發是有幫助的。安裝方式:
# 搜尋套件
brew search wxPython wxmac

# 安裝套件
brew install wxPython wxmac


執行 RunSnakeRun
執行方式很簡單,直接在 Terminal 中輸入:
runsnake
# or runsnake32
接著你可以看到 RunSnakeRun 介面出現,將你要分析的檔案加入即可。


可能會遇到的問題
(1.) 基本上我們已完成所需套件的安裝步驟。但 Homebrew 安裝好的 Module 會在 /usr/local/Cellar,若你使用的 Python 是系統預設的則會找不到 wxPython。會出現錯誤訊息:
ImportError: No module named wx
因此需要將安裝好的 Module 讓系統知道,進入系統 Python 存放 Module 的目錄 /Library/Python/2.7/site-packages,建立文字檔 wx.pth,將 wxPython 路徑加入到這個檔案裡面即可。例如:
/usr/local/Cellar/wxpython/3.0.2.0/lib/python2.7/site-packages/wx-3.0-osx_cocoa
(2.) 執行 runsnake 時,若出現錯誤訊息:
ImportError: dlopen(/usr/local/Cellar/wxpython/3.0.2.0/lib/python2.7/site-packages/wx-3.0-osx_cocoa/wx/_core_.so, 2): no suitable image found.

Did find: /usr/local/Cellar/wxpython/3.0.2.0/lib/python2.7/site-packages/wx-3.0-osx_cocoa/wx/_core_.so: mach-o, but wrong architecture
請改使用 runsnake32 指令。


Environment :
  ・ Mac OS X
  ・ Python 2.7

Reference :
  ・ RunSnakeRun



熱門文章