How to compile Lua 5.4.0 for Android as a dynamic library using Android Studio 4
This is a tutorial on how to compile Lua 5.4.0 for Android as a dynamic library (liblua.so) using the Windows Android Studio 4.
1. Download and install Android Studio 4.0 for Windows 64-bit.
2. Start a new Android Studio project.
3. Create a new empty project with No Activity
4. Name the project Lua Library, choose Java as the language and set a minimum SDK version.
5. Go to File | Settings and navigate to Appearance | System Settings and Android SDK
6. Go to the tab named SDK Tools and select the NDK (Side by Side) option and press Apply (accept the License and install it)
7. In the Project Explorer on the left navigate to the LuaLibrary | app | src folder and with right mouse button choose New | Directory and name it jni
8. On that jni-folder click the right mouse button and select New | File and name it Android.mk
9. Use default selected Text file type
and fill the newly created but empty file with
1 2 3 4 5 6 7 8 9 10 11 |
LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LUA_VERSION := 5.4.0 LOCAL_ARM_MODE := arm LOCAL_CFLAGS := -D"l_getlocaledecpoint()='.'" -DLUA_ANSI LOCAL_MODULE := liblua$(LUA_VERSION) LOCAL_LUA_SRC := lua-$(LUA_VERSION)/src LOCAL_SRC_FILES := $(LOCAL_LUA_SRC)/lapi.c $(LOCAL_LUA_SRC)/lauxlib.c $(LOCAL_LUA_SRC)/lbaselib.c $(LOCAL_LUA_SRC)/lcode.c $(LOCAL_LUA_SRC)/lcorolib.c $(LOCAL_LUA_SRC)/lctype.c $(LOCAL_LUA_SRC)/ldblib.c $(LOCAL_LUA_SRC)/ldebug.c $(LOCAL_LUA_SRC)/ldo.c $(LOCAL_LUA_SRC)/ldump.c $(LOCAL_LUA_SRC)/lfunc.c $(LOCAL_LUA_SRC)/lgc.c $(LOCAL_LUA_SRC)/linit.c $(LOCAL_LUA_SRC)/liolib.c $(LOCAL_LUA_SRC)/llex.c $(LOCAL_LUA_SRC)/lmathlib.c $(LOCAL_LUA_SRC)/lmem.c $(LOCAL_LUA_SRC)/loadlib.c $(LOCAL_LUA_SRC)/lobject.c $(LOCAL_LUA_SRC)/lopcodes.c $(LOCAL_LUA_SRC)/loslib.c $(LOCAL_LUA_SRC)/lparser.c $(LOCAL_LUA_SRC)/lstate.c $(LOCAL_LUA_SRC)/lstring.c $(LOCAL_LUA_SRC)/lstrlib.c $(LOCAL_LUA_SRC)/ltable.c $(LOCAL_LUA_SRC)/ltablib.c $(LOCAL_LUA_SRC)/ltm.c $(LOCAL_LUA_SRC)/lundump.c $(LOCAL_LUA_SRC)/lutf8lib.c $(LOCAL_LUA_SRC)/lvm.c $(LOCAL_LUA_SRC)/lzio.c include $(BUILD_SHARED_LIBRARY) |
10. Repeat step 8 and create a file named Application.mk and fill it with
1 2 3 4 |
APP_ABI := all APP_PLATFORM := android-23 |
11. Download Lua 5.4.0 source code, extract it and copy/paste the complete lua-5.4.0 folder inside the jni folder within Android Studio project explorer
12. Open a terminal with right click on the jni folder (Open in Terminal)
13. in that terminal window type this command (you may need to adjust the path to reflect your current installed NDK version!):
1 2 3 |
%localappdata%\Android\Sdk\ndk\21.2.6472646\ndk-build |
14. in the LuaLibrary\app\libs folder you’ll then find the shared libraries
No comments yet.
Leave a comment
About Dennis D. Spreen
Search
Recent Posts
- How to compile Lua 5.4.0 for Android as a dynamic library using Android Studio 4
- Please make inline vars usable for production – fix RSP-28892
- How to compile Lua 5.4.0 as a Mac OS X dynamic library
- How to compile Lua 5.4.0 for Linux as a shared library
- How to compile Lua 5.4.0 for Windows
- Daily Wage – a Spigot/Bukkit plugin that pays out a daily wage
- How to compile Lua 5.3.5 for Windows
- Better Collada exporter for Blender with custom properties
- MOS6502-delphi – a MOS 6502 CPU emulator for Delphi
- Pass a multidimensional array as a parameter (with a hidden caveat)
Categories
Tags
Archives
- May 2020
- March 2020
- June 2019
- March 2017
- August 2016
- July 2016
- June 2016
- January 2016
- September 2015
- February 2015
- January 2015
- October 2014
- September 2014
- August 2014
- May 2014
- March 2014
- February 2014
- November 2011
- June 2011
- February 2011
- March 2010
- September 2009
- August 2009
- July 2009
- May 2009
- March 2009
- February 2009
- January 2009
- November 2008
- October 2008
- February 2008
- June 2007
Delphi Feeds
- Simplifying Full-Stack Development with our newest solution! March 19, 2024
- El día de los Desarrolladores Delphi y C++ Builder 2024 en Madrid (Fotos) March 18, 2024
- How to View Digits of Pi in Real-Time with Delphi for Pi Day 2024 March 18, 2024
- ADUG 2024 Symposium March 17, 2024
- Delphi et la gestion mémoire: safe by design ? March 17, 2024
- Global Delphi Summit 2024 in Amsterdam March 17, 2024
- Register for Pascal Cafe in IJsselstein (Netherlands) on April 6th (Saturday) March 15, 2024
- The Global Delphi Summit: June 13+14 in “Amsterdam” (actually the H20 venue in Purmerend) March 15, 2024
- Rad Studio 12.1 - Beta: c'è una novità che mi piace tanto!!! March 15, 2024
- Getting the current line number in Delphi March 15, 2024