CMakeList配置之编译多个.cpp文件

上次提到AndroidStudio2.2进行NDK开发超方便的配置方式,不用进行Android.mk 配置,也不用进行Application.mk配置,只要配置CMakeList即可。那么问题来了,通过该方式生成的配置文件默认是只native-lib.cpp一个cpp文件的,那么怎么配置编译多个.cpp文件呢?

以之前发布的

NDK下获取IEIM并且使用MD5算法加密

为例,我们另外需要MD5.cpp和IEIM.cpp,   将工程在AndroidStudio2.2中编写好后,编译,(⊙o⊙)哦!

CMakeList配置之编译多个.cpp文件_第1张图片


密集恐惧症要来了,  忍住,一定要忍住。。。。


这个错是啥意思   仔细分析  其实就是找不到MD5.cpp和IEIM.cpp中的方法啦。


怎么解决呢?


Module下有一个CMakeLists.txt   的文件  默认内容是这样的,(只贴了需要改动的部分)

cmake_minimum_required(VERSION 3.4.1)

# Creates and names a library, sets it as either STATIC
# or SHARED, and provides the relative paths to its source code.
# You can define multiple libraries, and CMake builds it for you.
# Gradle automatically packages shared libraries with your APK.

add_library( # Sets the name of the library.
             native-lib

             # Sets the library as a shared library.
             SHARED

             # Provides a relative path to your source file(s).
             # Associated headers in the same location as their source
             # file are automatically included.
             src/main/cpp/native-lib.cpp )


改为


cmake_minimum_required(VERSION 3.4.1)

# Creates and names a library, sets it as either STATIC
# or SHARED, and provides the relative paths to its source code.
# You can define multiple libraries, and CMake builds it for you.
# Gradle automatically packages shared libraries with your APK.

file(GLOB native_srcs "src/main/cpp/*.cpp")
add_library( # Sets the name of the library.
             native-lib

             # Sets the library as a shared library.
             SHARED

             # Provides a relative path to your source file(s).
             # Associated headers in the same location as their source
             # file are automatically included.
             ${native_srcs})


哈哈,大功告成!再多个cpp都不成问题啦!快去动手试试吧


个人经验分享,如有错漏,请指正,谢谢

你可能感兴趣的:(android,ndk)