您的位置:首页 > 编程语言 > C语言/C++

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

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

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

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



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

这个错是啥意思   仔细分析  其实就是找不到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都不成问题啦!快去动手试试吧

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

8cb9
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: