PX4的CMake解析

本文详细介绍了PX4项目中CMake的使用,特别是px4_add_module函数在ekf2和多旋翼姿态控制模块的应用。内容包括模块的堆栈大小设置、依赖库、源文件指定等。此外,还提到了px4_parse_function_args、px4_add_common_flags等辅助函数的作用,以及px4_add_git_submodule如何处理git子模块。最后,px4_generate_airframes_xml函数生成机型XML文件的过程被解析,涉及python脚本处理XML和初始化文件。
摘要由CSDN通过智能技术生成

/home/yanlei/src/Firmware/cmake/common 中定义了其他CMakeLists.txt中所使用的一些函数
使用最多的函数px4_add_module在px4_base.cmake中

//ekf2的CMakeLists.txt
px4_add_module(
    MODULE modules__ekf2
    MAIN ekf2
    COMPILE_FLAGS
    STACK_MAIN 2500        //任务堆栈大小
    STACK_MAX 4000
    SRCS
        ekf2_main.cpp  //模块函数的起点
    DEPENDS
        git_ecl
        ecl_EKF
        ecl_geo
        perf
    )

多旋翼姿态控制的CMakeLists.txt
px4_add_module(
    MODULE modules__mc_att_control
    MAIN mc_att_control
    STACK_MAIN 1200
    STACK_MAX 3500
    COMPILE_FLAGS
    SRCS
        mc_att_control_main.cpp
    DEPENDS
        circuit_breaker
        conversion
        mathlib
    )

最终会在/home/yanlei/src/Firmware/  build  /nuttx_px4fmu-v2_default/src/modules   build文件夹中每个模块对应的文件夹下生产.a静态库文件用于后期程序链接

px4_base.cmake函数说明:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值