如何为 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 NDK的gradle构建文件中指定NDK
Firebase Cloud Messaging to Android 工作,但 iOS 失败。如何为 iOS 构建有效负载?