工作需要,proj库移植到android平台;
proj库编译过程中,依赖sqlite3、openssl、curl及tiff库,需提前分别交叉编译,然后再编译proj库;相关资源
交叉编译工具链:需配置ndk,当前使用版本26.2.11394342,编译工具路径配置到环境变量中;
平板环境:Android 6.0;
交叉编译环境:ubuntu 20.04;
编译过程记录:
①编译sqlite3
解压sqlite-autoconf-3440000.tar.gz;
./configure CC=armv7a-linux-adnroideabi23-clang --host=arm-linux-gnueabihf --enable-shared;
make;
make install;
②编译openssl
解压openssl-3.2.0-alpha2.tar.gz;
./vonfigure CC=armv7a-linux-androideabi23-clang --host=arm-linux-gnueabihf --enable-shared;
make;
make install;
③编译tiff
解压tiff-4.6.0.tar.gz;
./configure CC=armv7a-linux-androideabi23-clang --host=arm-linux-gnueabihf --enable-shared;
make;
make install;
④编译curl
解压curl-8.4.0.tar.gz;
./configure --enable-shared --enable-tiff --host=arm-linux-androideabihf CC=armv7a-linux-androideabi23-clang CXX=armv7a-linux-androideabi23-clang++ ;
make ;
即可编译出libproj.so(arm 32位版本)