そうだ、SL見よう - ReDo

2013年1月27日

そうだ、SL見よう

○sl in cygwin

Lunatilia.net - SLコマンド for Cygwin 1.7.7 環境
http://www12.atwiki.jp/lunatilia/pages/248.html

○sl in Ubuntu 12.04

・ncurses.hの配備先が/usr/include/直下になっており、-DLINUX20が不要なので削除する。

sudo apt-get install build-essential libncurses5-dev
wget http://www.tkl.iis.u-tokyo.ac.jp/~toyoda/sl/sl.tar
tar xvf sl.tar
cd sl
wget http://www.izumix.org.uk/sl/sl5-1.patch
patch -p1 < sl5-1.patch
vi Makefile
make
./sl
                                                        (@)     ()        @
                                                 (   )



                                                (@@@)
  ___________                                   ====        ________
__|_________|                               _D _|  |_______/        \__I_I_____=
 =|___ ___|      _______-_||_-____           |(_)---  |   H\________/ |   |
  ||_| |_||     _|       _><_     \_____A    /     |  |   H  |  |     |   |
--| [___] |   =|        -X||O-          |   |      |  |   H  |__----------------
__|       |   -|         <--            |   | ________|___H__/__|_____/[][]~\___
  |=======|____|__________||____________|_  |/ |   |-----------I_____I [][] []
__________|__|____________||____________|___/ =| o |=-~~\  /~~\  /~~\  /~~\ ____
~\___/          |_D__D__D_|| _____D__D_|   |/-=|___|=    ||    ||    ||    |____
_/               \_/   \\&||~|-+-----------------    \O=====O=====O=====O_/

やったー!俺らのslさんやー!

○sl in adb shell

Androidというかadb shellでも動かそうと、arm binaryで。

sudo apt-get install build-essential gcc-arm-linux-gnueabi g++-arm-linux-gnueabi

wget http://ftp.jaist.ac.jp/pub/GNU/ncurses/ncurses-5.9.tar.gz
tar xvf ncurses-5.9.tar.gz
cd ncurses-5.9
./configure --prefix=/usr/arm-linux-gnueabi --host=arm-linux-gnueabi --enable-static
make -j2
sudo make install

wget http://www.tkl.iis.u-tokyo.ac.jp/~toyoda/sl/sl.tar
tar xvf sl.tar
cd sl
wget http://www.izumix.org.uk/sl/sl5-1.patch
patch -p1 < sl5-1.patch

arm-linux-gnueabi-gcc -I. -I/usr/arm-linux-gnueabi/include/ncurses -Wall -O2 -o sl-arm sl.c -L/usr/arm-linux-gnueabi/lib -lncurses -static
arm-linux-gnueabi-strip sl-arm

adb push sl-arm /data/local/tmp/sl
adb chmod 755 /data/local/tmp/sl

terminfoが無いと怒られるので http://www.compdigitec.com/labs/2012/07/13/compiling-gnu-nano-for-android/
を参考にterminfoを/usr/arm-linux-gnueabi/lib/terminfo/からAndroidデバイス上にpush

adb shell
export TERMINFO=/data/local/tmp/terminfo
/data/local/tmp/sl

android-sl.png

一応動いだけどcygwinじゃないとterminal制御文字化けするし位置のおかしいキャラクタもちらほら。 NDKで後で再挑戦しよう。

コメントする