C++工程(五):CMake+NDK交叉编译
Android-NDK: 安卓-原生开发工具包
- 写一个Hello World
#include <iostream>
using namespace std;
int main(int argc, const char *argv[]) {
for(int i=0; i<5; i++) {
std::cout << "Hello: " << i << std::endl;
}
}
- android_ndk_build.sh编译脚本
#/bin/bash
export ANDROID_NDK=/PATH/TO/ANDROID-NDK/android-ndk-r25c/
rm -rf build
mkdir build && cd build
cmake -DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK/build/cmake/android.toolchain.cmake \
-DANDROID_ABI="arm64-v8a" \
-DANDROID_NDK=$ANDROID_NDK \
-DANDROID_PLATFORM=android-22 \
../
make
#make && make install
cd ..
-
移动端运行
- 将生成的可执行文件push至
/data/local/tmp
目录:adb push <exe_file> /data/local/tmp/test
chmod +x <exe_file>
赋予可执行权限- 运行结果如下:
- 将生成的可执行文件push至
参考:https://blog.csdn.net/qq_38410730/article/details/103622813