嵌入式 -- 工具集
齐达内斯塔
这个作者很懒,什么都没留下…
展开
-
gcc概览
GCC是 "GNU Compiler Collection" 的简称,属于 GNU 的一员。GCC 的步骤可以拆解如下:--main.c--#include <stdio.h>int main(){ printf("The is a test.\n"); return 0;}--main.c--| 预处理器| cpp| 命令:gcc -E main.c > main....原创 2018-04-18 11:40:53 · 243 阅读 · 0 评论 -
Makefile概览
在嵌入式开发领域中,大量的开发环境是通过使用 make 工具来构建的。而要使用 make 工具,就离不开编写 Makefile。make 一般主要被用来管理一个软件程序项目 (用来完成大型软件的自动编译),但是它不仅仅可以用来管理软件程序,还可以做很多其他的事情,比如文件同步等。makefile 是被 make 使用的“描述”文件,它描述要被 make 所管理的项目中的文件间的关系(比如对于一个 ...原创 2018-04-18 11:58:40 · 150 阅读 · 0 评论 -
Makefile目录和文件依赖
1、目录的自动创建和删除--foo.h--#ifndef __FOO_H#define __FOO_Hvoid foo();#endif--foo.c--#include <stdio.h>#include "foo.h"void foo(){ printf("This is foo()!\n");}--main.c--#include "foo.h"int ...原创 2018-04-18 12:03:48 · 2262 阅读 · 0 评论 -
binutils工具集
如果使用 gcc 作为编译器,那么 binutils 就是必不可少的一个工具集。工具集中的部分工具除了被 gcc 在后台使用为我们创建程序文件(目标文件、库文件或可执行程序)外,其它的则有助于方便开发和调试。在不少嵌入式开发环境中,根据目标平台的不同,编译器的名称往往不是 gcc,而是像 arm-rtems-gcc 这样的名称。对于这种命名形式的编译器,其 binutils 工具集通常也采用 ar...原创 2018-04-19 17:34:05 · 896 阅读 · 0 评论 -
ld概览
ld 链接器的功能是将一个可执行程序所需的目标文件和库最终整合为一体。一个程序通常包含传统的三个段:.text、 .data和 .bss 段。实际上,在目标文件和库被整合成一个可执行文件之前,通常各目标文件和库中也包含这三个段。不难想象链接器的功能就是将这些段进行合并。这之间有个非常重要的工作——重定位。1、重定位当一个源文件被编译为目标文件时,目标文件只记录了程序中的符号和各符号在段中的相对位置...原创 2018-04-25 16:49:36 · 327 阅读 · 0 评论 -
gdb 概览
gdb(The GNU Project Debugger) 是一个由 GNU 开源组织发布的、UNIX/LINUX 操作系统下的、基于命令行的、功能强大的程序调试工具。调试器在软件开发中的作用无须多言。对于嵌入式软件开发工程师来说,熟练地以命令行的方式使用 gdb 进行软件调试是基本技能之一。现在假设有源程序 main.c 如下:--main.c--#include <stdio.h>...原创 2018-04-27 09:29:58 · 445 阅读 · 0 评论