熟悉Linux环境编程的童鞋,对gcc一定不是很陌生,它可以高效地将C/C++代码编译成可执行文件。在嵌入式开发领域,gcc更是无比的强大,采用不同编译平台的gcc编译器,对应地就可以生成该平台的bin文件。由于gcc功能强大,在编译Linux内核时,gcc会是编译器的首选。
熟悉编译原理的童鞋对map文件一定很熟悉,但若是平时对底层编译不是很清晰,或者主要开发工作集中在应用层的童鞋,可能对其了解就神乎其微了。这个时候,你就需要好好阅读本文,了解下map文件了。本文要给大家分享生成map文件的方法,后续笔者会再写相关的文章介绍map文件的具体内容。
假设我们有以下的测试源码,功能很简单:
#include <stdio.h>
static int test_function(int arg)
{
printf("This is a function called: %s\n", __func__);
return arg;
}
int main(int argc, const char **argv)
{
test_function(0);
return 0;
}
通常我们要得到可执行文件,我们会输入编译命令: