上篇文章中记录了使用make install方式生成我们需要的.a静态库
通过这种方式生成的静态库之后,还是得手动将include头文件与.a文件再次使用cmake配制下,然后在ndk中生成我们想要的so库,我觉得还是比较麻烦,那有没有更简单的方式呢?通过cmake配制生成我们想要 的so,一步到位不是更好么?
源代码路径:android_iconv
前面生成config.h文件配制文件的过程与上篇文章相同
配制好ndk交叉编译环境后,使用sh ./configurate 使用生成config.h,然后把所有的文件拷到你工程的main/cpp目录下面
编写CMakeLists.txt文件
#最小版本号
CMAKE_MINIMUM_REQUIRED(VERSION 3.4.1)
#字符编码转换
project(iconv)
add_compile_options(
-Wno-multichar
-DANDROID
-D_ANDROID
-DLIBDIR=\"\"
-DBUILDING_LIBICONV
-DIN_LIBRARY
)
include_directories(
${CMAKE_CURRENT_SOURCE_DIR}
${CMAKE_CURRENT_SOURCE_DIR}/include
${CMAKE_CURRENT_SOURCE_DIR}