以前インストールした Busybox for android のwgetでは名前解決ができないので、Android用にコンパイルされたwgetを Jacob Hoffman-Andrews' Android stuff からダウンロードしてIS01にインストール。
パッチを見ると思ったより修正が必要だな、と。
Zaurusではwgetのバージョンが1.10.2の時にクロスコンパイルをしてみたけど、当時のメモを見るとソースの修正はなく、configure時にいくつかオプションを指定してmakeしていた模様。
GNU関係のソフトをAndroidに入れようとすると、それなりに修正が必要なのかな。
#wgetを入れたのは、LWPを入れるのが大変そうだったので。
2011/01/26
2011/01/19
IS01でSL4AのPerlを動かす
SL4AからPerlを起動(という表現でいいのか?)する時にLD_LIBRARY_PATHにK.Takata氏がコンパイルしたlibm.soへのパスを追加できれば動くと思われるので、消極的な方法で動かしてみる。
libm.soはIS01でPerlを動かすを参照。
試してみる方は自己責任で。
必要なもの。
3.のシェルスクリプトは、LD_LIBRARY_PATH ~ perl0 $* の部分は1行で記述。execは
無くてもいいかも。
Android for Perlのインストール時に一緒に入るサンプルのtest.plを動かしてみる。
libm.soはIS01でPerlを動かすを参照。
試してみる方は自己責任で。
必要なもの。
- root権限
- K.Takata氏がコンパイルしたlibm.so
- Perl for Android のperl (/data/data/com.googlecode.perlforandroid/files/perl/perl)を「perl0」にリネーム
- libm.soを/data/data/com.googlecode.perlforandroid/lib/にコピーし、パーミッションを755、所有者を元々あったperlと同じにする。
- /data/data/com.googlecode.perlforandroid/files/perl/perlを以下の内容で作成し、元々あったperlと同じパーミッション、オーナーにする。
#!/system/bin/sh LD_LIBRARY_PATH=/data/data/com.googlecode.perlforandroid/lib exec /data/data/com.googlecode.perlforandroid/files/perl/perl0 $*2.のlibm.soは/data/に置いてもいけるはず。ただし、3.のLD_LIBRARY_PATHをそのように変更する必要あり。
3.のシェルスクリプトは、LD_LIBRARY_PATH ~ perl0 $* の部分は1行で記述。execは
無くてもいいかも。
Android for Perlのインストール時に一緒に入るサンプルのtest.plを動かしてみる。
2011/01/10
ターミナルでのパイプの入力2
ターミナルでのパイプの入力 でパイプの入力に手間がかかる、と書いたのですがAndroid Terminal Emulator 1.0.21でBall + 5 でパイプが入力できるようになったようです。
#SSHを使うので、最近はConnectBotがメインになってますが。
2011/05/17 追記
現在のバージョン1.0.27ではBall + 5では入力できません。
最近使ってなかったので気づかなかった。
2011/10/09 追記
1.0.32ではMENU -> その他 -> 設定 -> Fn key で "Jog ball"を選択してあげればBall + L でパイプが入力できます。
#SSHを使うので、最近はConnectBotがメインになってますが。
2011/10/09 追記
1.0.32ではMENU -> その他 -> 設定 -> Fn key で "Jog ball"を選択してあげればBall + L でパイプが入力できます。
2011/01/09
IS01でPerlを動かす
2011/01/03の IS01ではSL4AのPerlは動かない では、SL4AのPerlは動かなかったが、__aeabi_fadd などを含んだ状態のlibm.soをIS01用にコンパイルして下さった方がいた。
ハングアップの日々 (2010/12) K.Takata氏のページ
2010/12/13 の記事にあるlibm.so (libm.7z)をダウンロードし、IS01にコピー。
2011/01/19 追記
消極的な方法でSL4A上から動くようにしてみた
IS01でSL4AのPerlを動かす
# /system/lib/ 配下のファイルのパーミッションが755ではなく、644なのが気になる。
ハングアップの日々 (2010/12) K.Takata氏のページ
2010/12/13 の記事にあるlibm.so (libm.7z)をダウンロードし、IS01にコピー。
adb push libm.so /data adb shell $ chmod 755 libm.soで、Perlを起動してみる。
$ LD_LIBRARY_PATH=/data $ /data/data/com.googlecode.perlforandroid/files/perl/perl --version動くことを確認。しかし、K.Takata氏が書かれているとおり、SL4A上からはPerlが動かせない。K.Takata氏のように、SL4AのPerl for Androidをコンパイルし直すか、それとも/system/lib/のlibm.soを差し替えてしまうか。前者はコンパイル環境を構築しないといけないし、後者は、他への影響があるかもしれないし、うーん、迷う。
2011/01/19 追記
消極的な方法でSL4A上から動くようにしてみた
IS01でSL4AのPerlを動かす
# /system/lib/ 配下のファイルのパーミッションが755ではなく、644なのが気になる。
2011/01/04
Rubyをインストール
AndroidでRubyスクリプティング
で、rattcv氏がIS01で動くRubyをコンパイルし公開されていたので、ダウンロードしてインストール。
open-uriを使ってhttpでのファイルの取得も問題無しでした。
rattcvの日記。では他にもConnectBotをIS01で使用しやすいように修正したものや、Vimやも公開されています。(2010/10/30の投稿)
で、rattcv氏がIS01で動くRubyをコンパイルし公開されていたので、ダウンロードしてインストール。
open-uriを使ってhttpでのファイルの取得も問題無しでした。
rattcvの日記。では他にもConnectBotをIS01で使用しやすいように修正したものや、Vimやも公開されています。(2010/10/30の投稿)
2011/01/03
IS01ではSL4AのPerlは動かない
タイトルのとおり、動かなかった。
NDK周りの問題かと思ったので、(IS01のlibm.soの問題。IS01でPerlを動かす、参照)SL4AのページからPerlの最初のリリース時のase_r13.apk (2009/09/22リリース)を入れてperl_r0.zipを入れてみたけど結局動かず。
Android NDK, Revision 2の頃のコンパイルだから動くかな、と思ったけど。残念。
IS01では、SL4Aで動いたのは試した範囲ではLua, Shell、でJRuby, Pythonは動かなかった(その他は試さず)。しかし、一見動いているLuaもhttp通信を行うため
mimeモジュールを使わないようにsocket.httpを変更してみたけど、
http://www.google.co.jp/ のようなページは取得できるものの、「/」のあとに何かあると、取得できず。
Luaをきちんと勉強していないので、深追いはせず。
/data/data/com.googlecode.perlforandroid/files/perl/perl --versionと実行すると
reloc_library[1302]: 2557 cannot locate '__aeabi_fadd'...CANNOT LINK EXECUTABLEとなる。
Android NDK, Revision 2の頃のコンパイルだから動くかな、と思ったけど。残念。
IS01では、SL4Aで動いたのは試した範囲ではLua, Shell、でJRuby, Pythonは動かなかった(その他は試さず)。しかし、一見動いているLuaもhttp通信を行うため
require ("socket.http")とすると、
error loading module 'mime.core' from file '/data/data/com.googlecode.luaforandroid/files/lua/lib/lua/5.1/mime/core.so':mimeモジュールのところでとエラーがでる。
Symbol not found:
mimeモジュールを使わないようにsocket.httpを変更してみたけど、
http://www.google.co.jp/ のようなページは取得できるものの、「/」のあとに何かあると、取得できず。
Luaをきちんと勉強していないので、深追いはせず。
登録:
投稿 (Atom)