Mathematica 9 の散策: Pythonikaの設定 (Mathematica から Python を実行する)

目次へ

Pythonika を知るに至った背景

 IPython のノートブックが Mathematica に似ているので興味を持ったが、次の背景があった。

1) IPython について書いてある本を読むにつけ Python を知らないことが分かった。

2) Sage  Beginner's Gude を読むと Python の説明が多い。

3) Raspberry Pi の解説書には Python が標準になっている。

 Mathematica Stack Exchange を検索して Pythonika に出会った。制限があるが MathematicaPython を動かすことができるパッケージです。次を参考にしてインストールに成功したのでメモを書くことにする。

  1. Is there a way to run Python from within Mathematica?
  2. Pythonika
  3. This is a clone of Pythonika, written by Ero Carrera, for personal experimentation.

Ubuntu12.04 への Pythonika のインストール

上記の 2. からソースをダウンロードできなかったが、3. からダウンロードすることができた。

Makefile.linux の中の4箇所を修正した。

次のコマンドで 実行ファイ Pythonika を作ることができた。

$ make -f Makefile.linux

Ubuntu14.04 への Pythonika のインストールに成功( 29-Jul-2014 )

Ubuntu 14.04 ではインストールに失敗する。 python 2.7.3 (Ubuntu 12.04)から python2.7.6 (Ubuntu14.04) に変わっている。

試行錯誤した結果成功した。 Makefile.linux の LIBS に -lpthread -lmを挿入することでコンパイルに成功した。

##     Ununtu 14.04 
LIBS = -L${LIBDIR} ${LIBDIR}/libML64i3.a -lstdc++ -lpthread -lm -lrt -lpython${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}

Mac OS X への Pythonika のインストール

Mac OS X Mountain Lion の場合は Makefile.osx  を編集することなく実行ファイルを作ることができた。

$ make -f Makefile.osx

Mac OS X 10.9 Mavericks への Pythonika のインストール

Mavericks の場合には次の修正が必要です。 Szabolcs 氏に問い合わせたところ親切に教えてくれた。 Makefile.osx の中の LIBS に -stdlib=libstdc++ を追加することでコンパイルに成功した。

##   Mac OS X 10.9  Mavericks
LIBS = -L${LIBDIR} -lMLi3 -F${PYTHONFRAMEWORKDIR} -framework Python -framework CoreFoundation -stdlib=libstdc++ -lstdc++

MathLink linking error after OS X 10.9 (Mavericks) upgrade after-os-x-10-9-mavericks

実行例

 テスト用の notebook を上記の 2. から手に入れることができる。次回に実行例を示すことにします。

目次へ