Maxima で綴る数学の旅

紙と鉛筆の代わりに、数式処理システムMaxima / Macsyma を使って、数学を楽しみましょう

-Android- Common LispをAndroidで使う : コンパイル済みのECLのバイナリ作りました

 

f:id:jurupapa:20141009125343j:plain

サラブレッド

 

Common LispAndroid上で使う方法について質問している人が結構います。なかなかまとまった情報が無いようです。

当然ですが、Maximaコンパイルして使うことが出来る、十分な機能を持ったANSI準拠のCommon Lisp処理系をAndroid上でも使うことが出来ます。私はEmbeddable Common Lisp (ECL)を使っています。ECL自身はマルチプラットフォームをサポートしており、その配布元サイトは以下です。

ECL - a Common-Lisp implementation

Android上で使うためにはいろいろとパッチを当てる必要があるらしく、それを全てやって動くようにしたのがecl-androidです。いかがその配布元サイトです。

ageneau/ecl-android · GitHub

このページからgit cloneしてmake udpate;make androidすると実行可能なECLのバイナリが出来上がります。

この作業、難しくは無いのですが面倒ではあるので、私が作ったバイナリを公開しました。

YasuakiHonda/ECL-Precompiled-Binaries · GitHub

使い方は簡単です。

上記のページにいき、右側のカラムにある「Download ZIP」ボタンを押してzipアーカイブファイルをダウンロードします。解凍すると中にはecl及びecl-pie(及びReadme.md)というファイルがあります。eclはAndroid 4.X, ARM cpu用のバイナリです。またecl-pieはAndroid 5.0, ARM cpu用のバイナリです。

- adb push ecl /data/local/tmp

- adb shell

- cd /data/local/tmp

- chmod 755 ecl

- ./ecl

これで使うことが出来ます。ファイルを転送して,chmodしておけば、端末エミュレータアプリからも使うことが出来ると思います。

そのうち暇が出来たらIntel cpu用のバイナリも作るかもしれません。

Lispを使う人が増えることを願っています。