1.下载Assimp库
下载链接:Release The 5.1.0 release · assimp/assimp · GitHub
2.写gen.sh
gen.sh 代码:
ANDROID_ABI=arm64-v8a
ANDROID_NDK=C:/Users/xtad/AppData/Local/Android/Sdk/ndk/17.2.4988734
ANDROID_PLATFORM=android-28
rm build -fr && mkdir build && cd build
cmake -DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK/build/cmake/android.toolchain.cmake \
-DANDROID_ABI=$ANDROID_ABI \
-DANDROID_FORCE_ARM_BUILD=TRUE \
-DANDROID_PLATFORM=$ANDROID_PLATFORM \
-DANDROID_NDK=$ANDROID_NDK \
-DANDROID_TOOLCHAIN=clang \
-DASSIMP_BUILD_TESTS=OFF \
-DASSIMP_ANDROID_JNIIOSYSTEM=ON \
-DASSIMP_BUILD_TESTS=OFF \
-DASSIMP_NO_EXPORT=TRUE \
-DASSIMP_BUILD_ASSIMP_TOOLS=FALSE \
-DASSIMP_BUILD_SAMPLES=FALSE \
-DASSIMP_BUILD_ALL_IMPORTERS_BY_DEFAULT=FALSE \
-DASSIMP_BUILD_ASSIMP_TOOLS=FALSE \
-DASSIMP_BUILD_FBX_IMPORTER=TRUE \
-DASSIMP_BUILD_OBJ_IMPORTER=TRUE \
-G Ninja \
..
make
解释:
-DASSIMP_BUILD_ALL_IMPORTERS_BY_DEFAULT=FALSE 命令
ASSIMP_BUILD_ALL_IMPORTERS_BY_DEFAULT 控制编译时是否默认将所有的格式包含进来,设置为FALSE代表默认不包含任何格式。
由于我只想要OBJ和FBX格式设置为TRUE,
-DASSIMP_BUILD_FBX_IMPORTER=TRUE \
-DASSIMP_BUILD_OBJ_IMPORTER=TRUE \
3.执行指令
1.
2.
代码:
//1.先执行 sh gen.sh
sh gen.sh
//2.在执行
cmake --build ./build --config Release -j 20
最终会生成assimp.so文件
显示结果:
生成so文件