如何将同时包含CMake和Makefile的Amazon Kinesis WebRTC SDK集成到Buildroot
Amazon Kinesis Video Streams WebRTC SDK Buildroot集成操作指引
Buildroot已经封装了CMake项目的标准化构建流程,不需要手动处理「先执行cmake生成Makefile再执行make」的步骤,直接调用官方提供的cmake-package模板即可自动适配该SDK的构建逻辑。
1 新建软件包目录
在Buildroot源码的package/目录下创建专属文件夹,命名为amazon-kinesis-webrtc-sdk-c。
2 编写Config.in配置文件
在刚创建的文件夹下新建Config.in文件,写入以下内容:
config BR2_PACKAGE_AMAZON_KINESIS_WEBRTC_SDK_C bool "amazon-kinesis-webrtc-sdk-c" depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_USE_WCHAR depends on BR2_SHARED_LIBS # 若需要静态编译可删除该行,同步修改编译选项 select BR2_PACKAGE_OPENSSL select BR2_PACKAGE_LIBCURL select BR2_PACKAGE_ZLIB help Amazon Kinesis Video Streams WebRTC SDK for C
3 编写包构建规则文件
同目录下新建amazon-kinesis-webrtc-sdk-c.mk文件,写入以下内容:
################################################################################ # # amazon-kinesis-webrtc-sdk-c # ################################################################################ # 替换为你需要使用的SDK版本对应的commit hash或标签名 AMAZON_KINESIS_WEBRTC_SDK_C_VERSION = v1.8.0 AMAZON_KINESIS_WEBRTC_SDK_C_SITE = https://github.com/awslabs/amazon-kinesis-video-streams-webrtc-sdk-c/archive/refs/tags/$(AMAZON_KINESIS_WEBRTC_SDK_C_VERSION).tar.gz AMAZON_KINESIS_WEBRTC_SDK_C_LICENSE = Apache-2.0 AMAZON_KINESIS_WEBRTC_SDK_C_LICENSE_FILES = LICENSE AMAZON_KINESIS_WEBRTC_SDK_C_DEPENDENCIES = openssl libcurl zlib # 配置SDK的CMake编译选项,可根据需求调整 AMAZON_KINESIS_WEBRTC_SDK_C_CONF_OPTS = \ -DBUILD_SAMPLES=OFF \ -DBUILD_TESTS=OFF \ -DENABLE_OPENSSL=ON # 调用Buildroot内置CMake构建模板,自动完成cmake生成构建文件、make编译、make安装流程 $(eval $(cmake-package))
4 启用并编译
- 执行
make menuconfig,进入Target packages->Miscellaneous,选中amazon-kinesis-webrtc-sdk-c后保存退出 - 执行
make all即可完成固件编译,SDK会自动集成到目标根文件系统中
常见适配调整
- 若需要编译示例程序,将
AMAZON_KINESIS_WEBRTC_SDK_C_CONF_OPTS中的-DBUILD_SAMPLES=OFF改为-DBUILD_SAMPLES=ON即可 - 若需要静态编译SDK,删除Config.in中的
depends on BR2_SHARED_LIBS配置,同时在CMake选项中添加-DBUILD_SHARED_LIBS=OFF
内容的提问来源于stack exchange,提问作者BILAL ALI
相关产品推荐
相关产品推荐

