如何为 Android 构建 Assimp? [关闭]

Posted

技术标签:

【中文标题】如何为 Android 构建 Assimp? [关闭]【英文标题】:How to build Assimp for Android? [closed] 【发布时间】:2021-12-08 21:54:47 【问题描述】:

我正在尝试为 android 构建 C++ 库 Assimp 的 .so 库。

GitHub 上的解释很不清晰,已经过时了。

关于如何做到这一点的任何想法?一个详细的教程会很棒:)

【问题讨论】:

交叉编译任何基于 CMake 的库的方法相同:指定 NDK 和 set the Android ABI and API level 中包含的 CMake 工具链文件 我是这些主题的新手。我不知道如何“交叉编译任何基于 CMake 的库”。如果您可以提供有关在这种特定情况下如何做的更多详细信息,那将非常有帮助。谢谢。 查看我粘贴的链接的“用法->命令行”部分。 "...GitHub 上的解释很不清楚而且过时... 你点击文档链接The Asset-Importer-Lib Documentation 吗?里面包含The Android build 【参考方案1】:

这很容易,因为Assimp 是一个基于cmake 的项目。

因此,在以下脚本中调整您的 NDK 路径和其他变量,然后从项目根文件夹运行它:

#!/bin/bash

ANDROID_ABI=x86
ANDROID_NDK=/home/Android/Sdk/ndk/23.0.7599858
ANDROID_PLATFORM=android-29

mkdir build && cd build
cmake -DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK/build/cmake/android.toolchain.cmake \
      -DANDROID_ABI=$ANDROID_ABI \
      -DANDROID_PLATFORM=$ANDROID_PLATFORM \
      -DASSIMP_ANDROID_JNIiosYSTEM=ON \
      ..
make

或者只是从 shell 作为单独的命令运行。

【讨论】:

以上是关于如何为 Android 构建 Assimp? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

如何为 android 构建 boost::locale

如何为 Android 构建和简化 Java 代码

使用assimp加载mtl颜色

如何为Android NDK的gradle构建文件中指定NDK

Firebase Cloud Messaging to Android 工作,但 iOS 失败。如何为 iOS 构建有效负载?

android studio,如何为发布版本制作签名的 apk(使用 KTS 构建文件的 gradle)