VIP20
本课程属于:004-SDK发布 启动链与BSP系统构建 · 共 20 门相关课程,组合学习更完整。
查看所属VIP全部课程 →
← 返回所属目录 咨询 / 购买

嵌入式SDK交叉编译工具链构建

📚 共计 30 章节
01
SDK概述
什么是SDK · SDK的组成要素 · SDK发布流程概览
基础概念
02
交叉编译概念
什么是交叉编译 · 与本地编译的区别 · 为什么需要交叉编译
核心原理
03
交叉编译工具链
工具链的组成(编译器、链接器、库)· 常见工具链介绍(GCC、LLVM)
工具链GCC
04
宿主机与目标机
宿主机环境要求 · 目标机架构(ARM、MIPS、RISC-V)· ABI与EABI
架构ABI
05
环境准备
Linux开发机搭建 · 必要软件包安装(build-essential、git、wget等)
环境Linux
06
GNU工具链源码编译
下载GCC源码 · 配置编译选项 · 编译与安装
源码GCC
07
crosstool-NG工具
crosstool-NG简介 · 安装与配置 · 生成自定义工具链
自动化工具链
08
Buildroot构建系统
Buildroot概述 · 配置目标架构 · 编译完整工具链与根文件系统
构建嵌入式
09
Yocto项目
Yocto简介 · Poky参考系统 · BitBake构建工具 · 生成交叉工具链
YoctoBitBake
10
Linaro工具链
Linaro简介 · 预编译工具链下载 · 环境变量配置
LinaroARM
11
ARM交叉编译实战
下载ARM GCC · 编写Hello World · 交叉编译与运行
实战ARM
12
RISC-V交叉编译实战
RISC-V工具链选择 · 编译RISC-V程序 · QEMU模拟运行
RISC-VQEMU
13
MIPS交叉编译实战
MIPS工具链获取 · 编译MIPS程序 · 常见问题
MIPS实战
14
工具链验证
测试编译 · 运行测试程序 · 检查文件类型(file命令)
验证调试
15
Sysroot概念
什么是Sysroot · Sysroot的作用 · 如何构建Sysroot
Sysroot库
16
库的交叉编译
静态库与动态库 · 交叉编译zlib · 交叉编译OpenSSL
库OpenSSL
17
头文件管理
头文件搜索路径 · 交叉编译中的头文件问题 · --sysroot选项
头文件sysroot
18
CMake交叉编译
CMake工具链文件编写 · 设置CMAKE_SYSTEM_NAME · 交叉编译示例
CMake构建
19
Autotools交叉编译
configure脚本 · --host与--build参数 · Makefile交叉编译
Autotoolsconfigure
20
Meson构建系统
Meson简介 · 交叉编译配置文件 · Meson编译示例
Meson现代
21
SDK目录结构设计
标准SDK目录布局 · include、lib、bin、share目录规划
结构规范
22
SDK打包与发布
压缩打包 · 版本号管理 · README编写 · 校验和生成
发布打包
23
SDK安装脚本
编写install.sh · 环境变量设置脚本 · 卸载脚本
脚本自动化
24
SDK测试框架
测试用例编写 · 自动化测试 · 回归测试
测试质量
25
多架构支持
同一SDK支持多架构 · 架构检测 · 动态链接库选择
多架构兼容
26
调试与优化
交叉编译调试技巧 · GDB交叉调试 · 性能分析工具
调试GDB
27
常见错误与解决
链接错误 · 库找不到 · ABI不兼容 · 运行时崩溃
排错经验
28
CI/CD集成
GitLab CI配置 · Jenkins流水线 · 自动构建与测试
CI/CDDevOps
29
SDK文档生成
Doxygen文档 · Markdown文档 · API参考手册
文档Doxygen
30
综合实战
从零构建一个完整SDK · 发布到内部仓库 · 团队协作流程
实战全流程