zoukankan      html  css  js  c++  java
  • Compile LuaJIT on linux

    为了尝试将LuaJIT接入虚幻Lua插件之中,需要预编译LuaJIT链接库,在桌面平台问题不大,
    主要是移动平台,涉及跨平台编译,因为对跨平台编译具体细节没有系统研究,这里先记录一下跨平台编译LuaJIT的主要过程

    由于官方提供的编译脚本仅有MakeFile,所以暂时只能跨平台编译,在Windows Subsystem Linux中操作。
    最终命令如下:

    #仅针对Android arm64,32位需要安装linux i386 sdk,先略过。
    make HOST_CC=clang   CROSS=/home/TestUser/android-ndk-r21/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android21- CC=clang
    

    因为新版NDK使用clang作为编译器,而MakeFile里面的一些路径处理还是比较旧,在路径拼接上存在一些问题,需要修改
    在MakeFile结束位置修改archive步骤:
    原版:

    $(LUAJIT_A): $(LJVMCORE_O)
    	$(E) "AR        $@"
    	$(Q)$(TARGET_AR) $@ $(LJVMCORE_O)
    

    新版

    原版路径拼接跟ndk21不太一致,先写死
    TARGET_AR="/home/TestUser/android-ndk-r21/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android-ar"
    $(LUAJIT_A): $(LJVMCORE_O)
    	$(E) "AR        $@ using $(TARGET_AR)"
    	$(Q)$(TARGET_AR) -r  $@ $(LJVMCORE_O)
    

    后续试试编写xmake脚本编译LuaJIT,MakeFile实在不如Lua脚本方便阅读。

  • 相关阅读:
    新浪微博采用Oauth发送图片和文字
    android proguard也有弱点
    POJ 2376
    POJ 3259
    POJ 2253
    POJ 1062
    POJ 2299
    POJ 2186
    POJ 1860
    POJ 2823
  • 原文地址:https://www.cnblogs.com/rpg3d/p/12901772.html
Copyright © 2011-2022 走看看