VTK编译与环境搭建
.Android 环境
-SDK安装
-NDK安装
-资源
1.Android developer网址 : https://developer.android.google.cn/studio/releases/platform-tools
.Linux Ubuntu
-package安装
-cmake
-ccmake
-mesa 安装
-功能
开放的三维计算机图形库,以开源形式实现了OpenGL的应用程序接口;
-命令
sudo apt install mesa-common-dev libgles3-mesa mesa-utils
-x11
-功能
图形化窗口管理系统,是建立图形用户界面 的标准工具包和协议;
-命令
sudo apt install libx11-dev libxext-dev libxtst-dev libxrender-dev libxmu-dev libxmuu-dev
-ncurses
-功能
提供了移动光标,建立窗口,产生颜色,处理鼠标操作等功能;
-安装命令
sudo apt install libncurses-dev libncurses5
-QT
-功能
跨平台C++图形用户界面应用程序开发框架;
-命令
//sudo apt install qt3d5-dev-tools qt3d5-examples qt3d5-dev qt3d-gltfsceneio-plugin
-OpenGL
-OpenGL Library
-功能
OpenGL标准库
-命令
sudo apt install libgl1-mesa-dev
-OpenGL Utilities
-功能
OpenGL Library工具组
-命令
sudo apt install libglu1-mesa-dev
-OpenGL Utility Toolkit
-功能
工具箱,扩展Utilities
-命令
sudo apt install libglut-dev
或者
sudo apt install freeglut3-dev
-SSL
-功能
安全套接字,提供一定的数据安全;
-命令
sudo apt install libssl-dev openssl
-build-essential
-功能
编译函数基本库
-命令
sudo apt install build-essential
-环境变量设置
export NDK_ROOT=/home/vtk/android-ndk-r16b
export ANDROID_NDK=/home/vtk/android-ndk-r16b
export ANDROID_PLATFORM_TOOL=/home/vtk/platform-tools
export ANDROID_TOOL=/home/vtk/tools
export PATH PATH=$PATH:$NDK_ROOT:$ANDROID_TOOL:$ANDROID_PLATFORM_TOOL:$GOROOT/bin:$GOPAHT/bin
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
export ANT=/usr/share/ant
-源码编译
-Command
cmake -DCMAKE_ANDROID_NDK=/usr/lib/android.sdk/ndk/21.3.6528147 -DCMAKE_BUILD_TYPE=Release -DVTK_ANDROID_BUILD=ON -DANDROID_NATIVE_API_LEVEL=24 -DCMAKE_INSTALL_PREFIX=~/vtk-android/ben-9.0.1/build -DANDROID_ARCH_ABI=arm64-v8a ../VTK-9.0.1
-shell脚本
cmake \
-DCMAKE_TOOLCHAIN_FILE=$NDK_ROOT/build/cmake/android.toolchain.cmake \
-DCMAKE_ANDROID_NDK=$NDK_ROOT \
-DCMAKE_SYSTEM_NAME=Android \
-DBUILD_SHARED_LIBS=OFF \
-DCMAKE_BUILD_TYPE=Release \
-DANDROID_ARCH_ABI=arm64-v8a \
-DCMAKE_CXX_FLAGS='-std=c++11 -fpic -fexceptions -frtti' \
-DCMAKE_C_FLAGS='-fpic' \
-DCMAKE_ANDROID_STL_TYPE='c++_static' \
-DCMAKE_SYSTEM_VERSION=24 \
-DVTK_ANDROID_BUILD=ON \
-DANDROID_PLATFORM=/home/wulijiao/Android/Sdk/ndk/21.3.6528147/platforms/android-22 \
-DANDROID_NATIVE_API_LEVEL=22 ..
cmake --build .
.源码
-添加模块
vtkAndroid.cmake
eg:
-DVTK_MODULE_ENABLE_VTK_InteractionWidgets:STRING=YES
-DVTK_MODULE_ENABLE_VTK_RenderingFreeType:STRING=YES
-DVTK_MODULE_ENABLE_VTK_InteractionImage:STRING=YES
-DVTK_MODULE_ENABLE_VTK_RenderingAnnotation:STRING=YES
.备注
NDK 使用 21
API 使用 24
ARM 使用 arm64-v8a