团结引擎+OpenHarmony 2 xlua编译篇

2024-04-11 09:28

本文主要是介绍团结引擎+OpenHarmony 2 xlua编译篇,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 前言
  • 一、下载 xlua 源码
  • 二、OpenHarmony SDK
  • 三、开干


前言

提示:我们的 app 鸿蒙化过程 需要用到 xlua ,目前没有适配 OpenHarmony 平台,所以需要重新编译一下。编译有多种方式,但是我只会这一种 就是使用 cmake。


一、下载 xlua 源码

xlua 传送门

下载下来 进入 build 文件内

二、OpenHarmony SDK

我们重新编译需要 用到 OpenHarmony SDK 中的编译工具链
所以需要下载 可以直接下载源码
OpenHarmony 4.1 release
OpenHarmony 工作台
也可以通过 DevEco Studio 进行下载 sdk 可以参考我上篇文章
团结引擎+OpenHarmony 1配置篇
在下载下来的 SDK 中找到 cmake 工具

例如 /Users/mac/workspace/HarmonyOS/DevEco4.1Beta/OpenHarmonySdk/10/native/build-tools/cmake/bin
在这里插入图片描述

三、开干

使用 sh 脚本 直接用

#2 编译适配 OpenHarmony 平台的xlua so库# 进入build目录
cd /Users/mac/Downloads/xLua-master/build# 创建构建目录并进入
mkdir -p build_openharmony_53 && cd build_openharmony_53# 找到 OpenHarmony sdk 中的编译工具
OH_SDK="/Users/mac/workspace/HarmonyOS/DevEco4.0/OpenHarmonySdk/10/native"#-DCMAKE_TOOLCHAIN_FILE=$OH_SDK/build/cmake/ohos.toolchain.cmake:指定了toolchain文件的位置,该文件包含了针对特定平台(这里是OpenHarmony)的构建规则。
#-DBUILD_SHARED_LIBS=OFF:指示CMake不要构建共享库(动态链接库),而是构建静态库。
#-DCMAKE_INSTALL_PREFIX=./:设置安装目录为当前目录(.表示当前目录)。
#最后的..表示CMakeLists.txt文件(CMake的配置文件)位于当前目录的上一级。
$OH_SDK/build-tools/cmake/bin/cmake --config Release -DCMAKE_TOOLCHAIN_FILE=$OH_SDK/build/cmake/ohos.toolchain.cmake  -DBUILD_SHARED_LIBS=OFF -DCMAKE_INSTALL_PREFIX=./ ..#这行代码使用make命令来编译和构建项目。CMake已经生成了Makefile文件,make命令会根据这些Makefile文件来构建项目。如果没有指定构建类型(如Debug或Release),则通常会按照CMakeLists.txt中的默认设置进行构建。
make

在这里插入图片描述
放到 Unity Plugin 中直接使用 就可以了
亲测可用

这篇关于团结引擎+OpenHarmony 2 xlua编译篇的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/893684

相关文章

java使用protobuf-maven-plugin的插件编译proto文件详解

《java使用protobuf-maven-plugin的插件编译proto文件详解》:本文主要介绍java使用protobuf-maven-plugin的插件编译proto文件,具有很好的参考价... 目录protobuf文件作为数据传输和存储的协议主要介绍在Java使用maven编译proto文件的插件

Visual Studio 2022 编译C++20代码的图文步骤

《VisualStudio2022编译C++20代码的图文步骤》在VisualStudio中启用C++20import功能,需设置语言标准为ISOC++20,开启扫描源查找模块依赖及实验性标... 默认创建Visual Studio桌面控制台项目代码包含C++20的import方法。右键项目的属性:

MySQL之InnoDB存储引擎中的索引用法及说明

《MySQL之InnoDB存储引擎中的索引用法及说明》:本文主要介绍MySQL之InnoDB存储引擎中的索引用法及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录1、背景2、准备3、正篇【1】存储用户记录的数据页【2】存储目录项记录的数据页【3】聚簇索引【4】二

SpringBoot集成LiteFlow工作流引擎的完整指南

《SpringBoot集成LiteFlow工作流引擎的完整指南》LiteFlow作为一款国产轻量级规则引擎/流程引擎,以其零学习成本、高可扩展性和极致性能成为微服务架构下的理想选择,本文将详细讲解Sp... 目录一、LiteFlow核心优势二、SpringBoot集成实战三、高级特性应用1. 异步并行执行2

LiteFlow轻量级工作流引擎使用示例详解

《LiteFlow轻量级工作流引擎使用示例详解》:本文主要介绍LiteFlow是一个灵活、简洁且轻量的工作流引擎,适合用于中小型项目和微服务架构中的流程编排,本文给大家介绍LiteFlow轻量级工... 目录1. LiteFlow 主要特点2. 工作流定义方式3. LiteFlow 流程示例4. LiteF

SpringBoot集成LiteFlow实现轻量级工作流引擎的详细过程

《SpringBoot集成LiteFlow实现轻量级工作流引擎的详细过程》LiteFlow是一款专注于逻辑驱动流程编排的轻量级框架,它以组件化方式快速构建和执行业务流程,有效解耦复杂业务逻辑,下面给大... 目录一、基础概念1.1 组件(Component)1.2 规则(Rule)1.3 上下文(Conte

Python基于微信OCR引擎实现高效图片文字识别

《Python基于微信OCR引擎实现高效图片文字识别》这篇文章主要为大家详细介绍了一款基于微信OCR引擎的图片文字识别桌面应用开发全过程,可以实现从图片拖拽识别到文字提取,感兴趣的小伙伴可以跟随小编一... 目录一、项目概述1.1 开发背景1.2 技术选型1.3 核心优势二、功能详解2.1 核心功能模块2.

MySQL 存储引擎 MyISAM详解(最新推荐)

《MySQL存储引擎MyISAM详解(最新推荐)》使用MyISAM存储引擎的表占用空间很小,但是由于使用表级锁定,所以限制了读/写操作的性能,通常用于中小型的Web应用和数据仓库配置中的只读或主要... 目录mysql 5.5 之前默认的存储引擎️‍一、MyISAM 存储引擎的特性️‍二、MyISAM 的主

Android NDK版本迭代与FFmpeg交叉编译完全指南

《AndroidNDK版本迭代与FFmpeg交叉编译完全指南》在Android开发中,使用NDK进行原生代码开发是一项常见需求,特别是当我们需要集成FFmpeg这样的多媒体处理库时,本文将深入分析A... 目录一、android NDK版本迭代分界线二、FFmpeg交叉编译关键注意事项三、完整编译脚本示例四

idea maven编译报错Java heap space的解决方法

《ideamaven编译报错Javaheapspace的解决方法》这篇文章主要为大家详细介绍了ideamaven编译报错Javaheapspace的相关解决方法,文中的示例代码讲解详细,感兴趣的... 目录1.增加 Maven 编译的堆内存2. 增加 IntelliJ IDEA 的堆内存3. 优化 Mave