1 平臺
在win上安裝vmware,在vmware上安裝Ubuntu。
2 開發(fā)工具Android NDK
在NDK官網(wǎng)
https://developer.android.google.cn/ndk/downloads/index.html
下載Linux版的NDK,然后解壓,得到
/home/jingao/work/android-ndk-r14b
添加環(huán)境變量并使環(huán)境變量立即生效
sudo gedit ~/.bashrc
在文件尾添加以下內(nèi)容:
export NDK=/home/jingao/work/android-ndk-r14b
export PATH=${PATH}:$NDK
使環(huán)境變量生效
source ~/.bashrc
在shell 中輸入ndk-build,沒有出現(xiàn)command not found則表明安裝成功。
3 編譯
將makefile中的NDK_BASE設(shè)置為NDK的路徑,即/home/jingao/work/android-ndk-r14b,然后編譯
make clean
make all
生成了可執(zhí)行文件main,然而只能在arm手機上運行。
4 編譯為SSE
可以將neon代碼編譯為SSE版本,就可以在pc上運行。具體做法為
(1) 在工程中增加頭文件NEONvsSSE.h
(2) 在main.c中將
#include <arm_neon.h>
改為
//#include <arm_neon.h>
#include "NEONvsSSE.h"
然后編譯
gcc -Wall -march=core-avx2 -mmmx -o a.out main.c
得到可執(zhí)行文件a.out,可以在pc上運行。