今回は前回に続いて,
Luaインタープリタの導入
Lua言語とは?
Lua言語は,
Lua言語処理系の設計における基本的な思想は,
たとえば,
Lua言語はインタープリタなので,
導入に際して
Luaインタープリタは軽量でポータブルな言語処理系で,
これらのライブラリはPC上の組込みボード用のクロスコンパイラに対してインストールを行い,
readlineの導入
まず,
# ./configure --prefix=/usr/sh3-linux/sh3-linux --host=sh3-linux
--prefixオプションでインストール先を指定し,
コンパイルとインストールは以下のように行います。
# make # make install
インストールはPC上の組込みボード用のクロスコンパイラに対して行いました。
Lua言語処理系はインタープリタなので,
SH7706LSRに共有ライブラリのみインストールするには,
# cd /usr/sh3-linux/sh3-linux/lib # cp -a libhistory.so* [メモリカード]/lib # cp -a libreadline.so* [メモリカード]/lib
ncursesの導入
ここではreadline-6.
コンパイル環境の構築は以下のように行います。
# ./configure --prefix=/usr/sh3-linux/sh3-linux --host=sh3-linux
--prefixオプションでインストール先を指定し,
コンパイルとインストールは以下のようにします。
# make # make install
これで,
Luaの導入
ここではlua-5.
Lua言語処理系のソースコードのコンパイルでは,
トップフォルダではインストール先の指定を行うのでSH3向けクロスコンパイラのフォルダを指定します。トップフォルダのMakefileの書き換えはリスト1のように行います。
リスト1 トップフォルダMakefileの変更点
01: # makefile for installing Lua
02: # see INSTALL for installation instructions
03: # see src/Makefile and src/luaconf.h for further customization
04:
05: # == CHANGE THE SETTINGS BELOW TO SUIT YOUR ENVIRONMENT =======================
06:
07: # Your platform. See PLATS for possible values.
08: PLAT= none
09:
10: # Where to install. The installation starts in the src and doc directories,
11: # so take care if INSTALL_TOP is not an absolute path.
12: INSTALL_TOP= /usr/sh3-linux/sh3-linux ←変更
13: INSTALL_BIN= $(INSTALL_TOP)/bin
14: INSTALL_INC= $(INSTALL_TOP)/include
15: INSTALL_LIB= $(INSTALL_TOP)/lib
16: INSTALL_MAN= $(INSTALL_TOP)/man/man1
《以下略》
srcフォルダでは使用するコンパイラの指定を行うのでSH3向けクロスコンパイラを指定します。srcフォルダのMakefileの書き換えはリスト2のように行います。
リスト2 srcフォルダMakefileの変更点
01: # makefile for building Lua
02: # see ../INSTALL for installation instructions
03: # see ../Makefile and luaconf.h for further customization
04:
05: # == CHANGE THE SETTINGS BELOW TO SUIT YOUR ENVIRONMENT =======================
06:
07: # Your platform. See PLATS for possible values.
08: PLAT= none
09:
10: CC= sh3-linux-gcc ← 変更
11: CFLAGS= -O2 -Wall $(MYCFLAGS)
12: AR= sh3-linux-ar rcu ← 変更
13: RANLIB= sh3-linux-ranlib ← 変更
14: RM= rm -f
15: LIBS= -lm $(MYLIBS)
16:
17: MYCFLAGS=
18: MYLDFLAGS=
19: MYLIBS=
コンパイルは以下のように行います。
# make
実行ファイルはLua言語インタープリタであるluaと,
# cp src/lua [メモリカード]/bin # cp src/luac [メモリカード]/bin
Lua言語処理系では,
# make install