Построение Lua на системах Unix очень просто:
Ниже приведены инструкции для пользователей систем Windows и Macintosh.
Если make выполнилась без проблем, Вы получите:
Это единственные каталоги, в которых Вы нуждаетесь для разработки.
Man-страницы для lua и luac в nroff и html, а также справочное описание в html помещаются в ./doc, некоторый типовой код в ./test, а некоторые полезные дополнения в ./etc. Вы не нуждаетесь в этих каталогах для разработки.
Изучите также README-файлы в различных подкаталогах. Удобная отправная точка: ./doc/readme.shtml.
Если вызов make ничего хорошего не сделал, пожалуйста, сообщите на lua@tecgraf.puc-rio.br. Если Вы делаете изменения для config или в файлах Makefile, пожалуйста, пошлите их туда же.
Если Вы управляете Linux, сделайте make so после успешного выполнения make. Это создаст общедоступные библиотеки в ./lib. Вероятно, лучше формировать общедоступные библиотеки прежде, чем выполнять make install.
Если Вы хотите переделать интерпретатор и транслятор так, чтобы использовать общедоступные библиотеки, то выполните также make sobin.
Вы, возможно, должны включить lib в системную переменную LD_LIBRAY_PATH, чтобы компоновать программы, которые используют общедоступные библиотеки, если Вы не помещаете их в официальные места с помощью make install.
Формирование общедоступных библиотек в других системах подобно этому, но детали отличаются. Вы будете должны поправить несколько деталей в Makefile на верхнем уровне дерева кода.
Команды для формирования Lua на Mac или Windows-машине зависят от специфического компилятора, который Вы используете. Самый простой путь состоит в том, чтобы создать папку со всеми файлами .c и .h. Затем создайте проекты для основной библиотеки, стандартной библиотеки, интерпретатора и прекомпилятора следующим образом:
core lib: lapi.c lcode.c ldebug.c ldo.c lfunc.c lgc.c llex.c lmem.c lobject.c lparser.c lstate.c lstring.c ltable.c ltests.c ltm.c lundump.c lvm.c lzio.c standard lib: lauxlib.c lbaselib.c ldblib.c liolib.c lmathlib.c lstrlib.c interpreter: core lib, standard lib, lua.c compiler: core lib, dump.c luac.c opt.c print.c stubs.c
Конечно, чтобы использовать Lua как разделяемую библиотеку, Вы должны знать, как создавать и использовать библиотеки с Вашим компилятором и в Вашей операционной системе.
cd sql tar zxf /download/mylua.tar.gz cd .. ./configure --enable-assembler \ --prefix=/usr/local/mysql \ --enable-assembler \ --with-mysqld-ldflags="-L/usr/src/lua/lib \ -llua -llualib"
mysql mysql mysql< SELECT user,host FROM user PROCEDURE("/usr/src/mysql/sql/count.lua")