编译libcurl静态库(.a文件) 在android中使用(armeabi、x86、arm64-v8a、x86_64等)
16lz
2021-01-25
首先 下载好libcurl源码项目,进入该项目根目录,创建一个文件,如android_build.sh(linux脚本),插入如下代码:
#!/bin/bashLOCAL_NDK_HOME=/home/xxx/soft/android/android-sdk/android-ndk-r10e/android-ndk-r10e/set_env_aarch64(){export SYSROOT="${LOCAL_NDK_HOME}platforms/android-21/arch-arm64"export LDFLAGS="-L${SYSROOT}/usr/lib"export CPPFLAGS="-I${SYSROOT}/usr/include"export CC="${LOCAL_NDK_HOME}toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86/bin/aarch64-linux-android-gcc --sysroot=$SYSROOT"}set_env_arm(){export SYSROOT="${LOCAL_NDK_HOME}platforms/android-21/arch-arm"export LDFLAGS="-L${SYSROOT}/usr/lib"export CPPFLAGS="-I${SYSROOT}/usr/include"export CC="${LOCAL_NDK_HOME}toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86/bin/arm-linux-androideabi-gcc --sysroot=$SYSROOT"}set_env_x86(){export SYSROOT="${LOCAL_NDK_HOME}platforms/android-21/arch-x86"export LDFLAGS=-"L${SYSROOT}/usr/lib"export CPPFLAGS="-I${SYSROOT}/usr/include"export CC="${LOCAL_NDK_HOME}toolchains/x86-4.9/prebuilt/linux-x86/bin/i686-linux-android-gcc --sysroot=$SYSROOT"}set_env_x86_64(){export SYSROOT="${LOCAL_NDK_HOME}platforms/android-21/arch-x86_64"export LDFLAGS="-L${SYSROOT}/usr/lib"export CPPFLAGS="-I${SYSROOT}/usr/include"export CC="${LOCAL_NDK_HOME}toolchains/x86_64-4.9/prebuilt/linux-x86/bin/x86_64-linux-android-gcc --sysroot=$SYSROOT"}#make cleanif test $1 -eq 1 ;then set_env_arm./configure --host=arm-linux-androideabi \--without-ssl \--disable-ftp \--disable-gopher \--disable-file \--disable-imap \--disable-ldap \--disable-ldaps \--disable-pop3 \--disable-proxy \--disable-rtsp \--disable-smtp \--disable-telnet \--disable-tftp \--without-gnutls \--without-libidn \--without-librtmp \--disable-dictmakeelif test $1 -eq 2 ;thenset_env_aarch64./configure --host=aarch64-linux-androideabi \--without-ssl \--disable-ftp \--disable-gopher \--disable-file \--disable-imap \--disable-ldap \--disable-ldaps \--disable-pop3 \--disable-proxy \--disable-rtsp \--disable-smtp \--disable-telnet \--disable-tftp \--without-gnutls \--without-libidn \--without-librtmp \--disable-dictmakeelif test $1 -eq 3 ;thenset_env_x86./configure --host=x86-linux-androideabi \--without-ssl \--disable-ftp \--disable-gopher \--disable-file \--disable-imap \--disable-ldap \--disable-ldaps \--disable-pop3 \--disable-proxy \--disable-rtsp \--disable-smtp \--disable-telnet \--disable-tftp \--without-gnutls \--without-libidn \--without-librtmp \--disable-dictmakeelseset_env_x86_64./configure --host=x86_64-linux-androideabi \--without-ssl \--disable-ftp \--disable-gopher \--disable-file \--disable-imap \--disable-ldap \--disable-ldaps \--disable-pop3 \--disable-proxy \--disable-rtsp \--disable-smtp \--disable-telnet \--disable-tftp \--without-gnutls \--without-libidn \--without-librtmp \--disable-dictmakeexitfi
执行 android_build.sh 1 就会生成amreabi架构的libcurl.a文件,文件位于 lib/.lib/目录里,拷出来即可使用(该目录为隐藏目录,所以看不见)
执行android_build.sh 2就会生成arm64-v8a 架构的libcurl.a文件....
其他架构类同.............
这里有我已经编译好的,点击下载即可 https://download.csdn.net/download/ab6326795/10753780
更多相关文章
- 一款常用的 Squid 日志分析工具
- GitHub 标星 8K+!一款开源替代 ls 的工具你值得拥有!
- RHEL 6 下 DHCP+TFTP+FTP+PXE+Kickstart 实现无人值守安装
- Linux 环境下实战 Rsync 备份工具及配置 rsync+inotify 实时同步
- Nginx系列教程(六)| 手把手教你搭建 LNMP 架构并部署天空网络电影
- Android之智能问答机器人
- 3000套IOS android源码分享 7.2G UI素材
- Android(安卓)2.3新增API - DownloadManager
- Android(安卓)stutdio2.2 启动模拟器出现“/dev/kvm is not foun