CMakeLists生成动态库.so和静态库.a

本文详细介绍了如何在Flutter项目中使用NDK和CMake构建C++动态库.so和静态库.a,以及如何通过FFI在Dart代码中调用这些库的方法。

一、下载NDK CMake

- NDK :  26.2.11394342  或 23.1.7779620

- CMake : 3.22.1

二、新建android\app\CMakeLists.txt

文件CMakeLists.txt内容

cmake_minimum_required(VERSION 3.4.1)
#mker为项目名称
project('mker')

#设置生成的so动态库最后输出的路径
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR}/libs/${ANDROID_ABI})

#生成动态库.so
add_library(
#c/cpp代码将要编译成为so库的名称,dart代码加载库文件要用这个名称
        native_lib 
        
        SHARED #动态库
#cpp代码文件路径 可以在下面接着随意添加c、c++文件
        cpp/native_lib.cpp )
 
 #生成静态库.a
 add_library(
        #静态库.a的名称
        mystatic

        STATIC #静态库
        #cpp代码文件路径 可以在下面接着随意添加c、c++文件
        cpp/native_lib.cpp )
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值