使用OHOS SDK构建filament
参照OHOS IDE和SDK的安装方法配置好开发环境。
从gitee下载源码。
执行如下命令:
git clone https://gitee.com/oh-graphics/filament.git -b v1.32.1-ohos
构建过程分为两步,先构建Windows平台的工具链,然后再构建OHOS平台的库文件。
Windows平台
进入源码所在的目录,创建批处理文件windows_build.cmd
,内容如下:
@echo off
setlocal
set OHOS_SDK_HOME=D:\Tools\Huawei\OHOS\SDK\9
set CMAKE_HOME=D:\Tools\cmake-3.26.0-windows-x86_64
set PATH=%CMAKE_HOME%\bin;%PATH%
set PYTHON_HOME=D:\Tools\python-3.10.10-embed-amd64
set PATH=%PYTHON_HOME%\;%PATH%
set PATH=%PYTHON_HOME%\Scripts\;%PATH%
set SRC_ROOT=%CD%
set BUILD_ROOT=.\out\cmake-release
set INSTALL_ROOT=.\out\release\filament
cmake -G Ninja ^
-S %SRC_ROOT% ^
-B %BUILD_ROOT% ^
-DCMAKE_INSTALL_PREFIX=%INSTALL_ROOT% ^
-DFILAMENT_ENABLE_JAVA=NO ^
-DCMAKE_BUILD_TYPE=Release ^
-DIMPORT_EXECUTABLES_DIR=out ^
-DFILAMENT_SKIP_SAMPLES=ON
cmake --build %BUILD_ROOT% --target install --config release --parallel
进入CMD,在源码所在的目录下,执行如下命令:
call windows_build.cmd
等待项目编译结束。
OHOS平台
进入源码所在的目录,创建批处理文件ohos_build.cmd
,内容如下:
@echo off
setlocal
set OHOS_SDK_HOME=D:\Tools\Huawei\OHOS\SDK\9
set CMAKE_HOME=D:\Tools\cmake-3.26.0-windows-x86_64
set PATH=%CMAKE_HOME%\bin;%PATH%
set PYTHON_HOME=D:\Tools\python-3.10.10-embed-amd64
set PATH=%PYTHON_HOME%\;%PATH%
set PATH=%PYTHON_HOME%\Scripts\;%PATH%
set SRC_ROOT=%CD%
cmake -S %SRC_ROOT% ^
-B %SRC_ROOT%\out\build-ohos ^
-G "Ninja Multi-Config" ^
-DCMAKE_TOOLCHAIN_FILE=%OHOS_SDK_HOME%\native\build\cmake\ohos.toolchain.cmake ^
-DOHOS_NDK=%OHOS_SDK_HOME% ^
-DOHOS_PLATFORM_LEVEL=1 ^
-DOHOS_ARCH=arm64-v8a ^
-DCMAKE_CXX_FLAGS="-D__OHOS__=1 -Wno-unused-command-line-argument -Wno-undef" ^
-DCMAKE_C_FLAGS="-D__OHOS__=1 -Wno-unused-command-line-argument -Wno-undef" ^
-DIMPORT_EXECUTABLES_DIR=out ^
-DCMAKE_BUILD_TYPE="Release" ^
-DFILAMENT_NDK_VERSION="9" ^
-DFILAMENT_ENABLE_MATDBG=OFF ^
-DFILAMENT_DISABLE_MATOPT=ON ^
-DFILAMENT_SUPPORTS_OPENGL=ON ^
-DFILAMENT_SUPPORTS_EGL_ON_OHOS=ON ^
-DFILAMENT_SUPPORTS_VULKAN=OFF ^
-DFILAMENT_SKIP_SAMPLES=ON ^
-DFILAMENT_ENABLE_JAVA=NO ^
-DOHOS_ON_WINDOWS=ON
cmake --build %SRC_ROOT%\out\build-ohos --config release --parallel
进入CMD,在源码所在的目录下,执行如下命令:
call ohos_build.cmd
等待项目编译结束。
使用OHOS SDK构建filament的更多相关文章
- Eclips+ADT+SDK构建android开发环境及android自动化测试开发环境
一. 需要用到的包: 1.adt-bundle-windows-x86_64-20140702.zip+JDK+ant 2.ant下载地址:http://ant.apache.org/bindownl ...
- 使用声网 SDK 构建 Piloteer 助盲服务平台的最佳实践
前言 在今年声网主办的「RTE2022 编程挑战赛」中,数支队伍经过一个多月的努力开发,很多优秀的作品最终突出重围,斩获大奖.本文由RTE2022编程挑战赛获奖者之一李新春撰写,他主要围绕获奖作品「P ...
- Eclipse SDK构建J2EE开发环境
鄙视官Java EE Developers 体积庞大的兄弟们可以提出自己的J2EE开发环境! 1.第一次去Eclipse官网下载Eclipse IDE 我使用的是:Eclipse IDE for Ja ...
- .NET 7 SDK 开始 支持构建容器化应用程序
微软于 8 月 25 日在.NET官方博客上,.NET 7 SDK 将包括对创建容器化应用程序的支持,作为构建发布过程的一部分,从而绕过需要.显式 Docker 构建阶段. 这一决定背后的基本认知是简 ...
- 阿里云 OCS SDK for NodeJS介绍
阿里云 OCS SDK for NodeJS介绍 阿里云技术团队:熊亮 阿里云 SDK for NodeJS 是为 NodeJS 开发者提供使用阿里云各项服务的统一入口,由阿里云UED团队负责开发维护 ...
- eclipse构建maven+scala+spark工程
前提条件 下载安装Scala IDE build of Eclipse SDK 构建工程 1.新建maven工程 2.配置项目信息 3.新建scala对应的Source Folder 4.添加scal ...
- Android官方技术文档翻译——新构建系统概述
本文译自Android官方技术文档<New Build System>,原文地址:http://tools.android.com/tech-docs/new-build-system. ...
- Android官方技术文档翻译——开发工具的构建概述
本文译自Android官方技术文档<Build Overview>,原文地址:http://tools.android.com/build. 因为<Android Lint Chec ...
- Android SDK Mangaer 需要下载的组件
以 Windows 下为例,安装完 Android SDK 后,可以看到 SDK 的目录结构如下: 其中: SDK Manager.exe 是 Android SDK 的管理工具, AVD Manag ...
- 如何使用SDK在Ubuntu设备(包括仿真器和桌面)上运用应用程序
简介 有三种运行通过SDK创建的应用程序的方式:在桌面上,在联网的Ubuntu设备上,以及在仿真器中.这些方式为互补性方式,因为各有优缺点.您首先将了解如何管理SDK的设备类型,以及哪一个类型用于测试 ...
随机推荐
- 【小记事】如何设置vscode代码格式化时不要自动换行
最近一格式化就给我分好多行,好气哦(`ヘ´)=3 在setting.json中添加如下代码: "vetur.format.defaultFormatter.html": " ...
- 案例分享:Qt激光加工焊接设备信息化软件研发(西门子PLC,mysql数据库,用户权限控制,界面设计,参数定制,播放器,二维图,rgv小车,期限控制,参数调试等)
需求 1.键鼠控制,承担ui界面设计,布局兼容分辨率1024x768 ~ 1920x1080. 2.权限控制:三种权限,分为管理员(可以定制模块界面,修改产品名称等定制化软件和其他权限,同时具备 ...
- udp循环发消息,sockerserver,文件校验,服务器合法性校验---day29
1.udp循环发消息 # ### 客户端 import socket sk = socket.socket(type=socket.SOCK_DGRAM) while True: #发送消息 mess ...
- os.path.relpath和os.path.basename,返回文件路径中的文件名
from os import path print(path.relpath("/home/hpcadmin/lw/demo.py", start="/home/hpca ...
- 2024-02-28:用go语言,有一个由x轴和y轴组成的坐标系, “y下“和“y上“表示一条无限延伸的道路,“y下“表示这个道路的下限,“y上“表示这个道路的上限, 给定一批长方形,每一个长方形有(
2024-02-28:用go语言,有一个由x轴和y轴组成的坐标系, "y下"和"y上"表示一条无限延伸的道路,"y下"表示这个道路的下限,& ...
- Java是解释型语言么
基础概念 JVM虚拟机会将.java类文件编译成.class文件--字节码文件,这大家都知道. 代码运行时还需要将.class字节码文件翻译成机器码才能执行. 解释执行:将编译好的字节码一行一行地翻译 ...
- 图数据库 Nebula Graph 的代码变更测试覆盖率实践
对于一个持续开发的大型工程而言,足够的测试是保证软件行为符合预期的有效手段,而不是仅仅依靠 code review 或者开发者自己的技术素质.测试的编写理想情况下应该完全定义软件的行为,但是通常情况都 ...
- URLDNS链分析
一.概述 URLDNS 是ysoserial中利用链的一个名字,通常用于检测是否存在Java反序列化漏洞.该利用链具有如下特点: 不限制jdk版本,使用Java内置类,对第三方依赖没有要求 目标无回显 ...
- 感慨 vscode 支持win7最后一个版本 1.70.3 于2022年7月发布
为什么 家里电脑一直是win7,也懒的升级,nodejs也不能用最新的,没想到vscode也停产了 https://code.visualstudio.com/updates/v1_70 后记 别用u ...
- ubuntu16.04 关闭系统的屏幕阅读功能
在安装audacity的时候,不知道点到哪里,电脑突然就不停的"Chinese Letter",后面仔细听,鼠标点到那里就会读那里文字,键盘输入也是,联想到Android上也有类似 ...