随笔分类 -  buildsystem

摘要:1.编译应用程序 应用程序编译注意有以下几点: 1.区分glibc和uclibc 对于复合编译器的相关选项会有不同。 比如: CONFIG_UCLIBC_BUILD=y ifeq ($(CONFIG_UCLIBC_BUILD), y) CFLAGS += -muclibc LDFLAG += -mu 阅读全文
posted @ 2021-11-24 20:39 海林的菜园子 阅读(397) 评论(0) 推荐(0) 编辑
摘要:进行预编译 gcc -E hello.c -o hello.i 显示所有waring, 并将waring转为error CFLAGS := -Wall -Werror ELF->反汇编 objdump -D test.elf > dis_test.s ELF->BIN文件 常用在裸机开发过程中,由于 阅读全文
posted @ 2021-11-05 11:31 海林的菜园子 阅读(233) 评论(0) 推荐(0) 编辑
摘要:在编译时,如果没有指定上面的任何优化参数,则默认为 -O0,即没有优化。 在GCC相关手册中查到。 https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options Without any optimization o 阅读全文
posted @ 2021-11-05 11:16 海林的菜园子 阅读(168) 评论(0) 推荐(0) 编辑
摘要:1.准备测试代码 #include <stdio.h> int main(void) { printf("hello\n"); return 0; } 2.使用-v选项,编译 gcc -v test.c 3.分析输出 1.查看头文件目录中,有没有uclibc输出字段中 如 #include "... 阅读全文
posted @ 2021-10-26 15:53 海林的菜园子 阅读(713) 评论(0) 推荐(0) 编辑
摘要:基本操作 debug:生成debug包 release:生成release包 all:依次生成debug包,release包 示例一 #!/bin/sh export STAGING_DIR=../staging_dir export PATH=$PATH:../staging_dir/toolch 阅读全文
posted @ 2021-10-09 17:41 海林的菜园子 阅读(123) 评论(1) 推荐(0) 编辑
摘要:gcc部分 常用软件 名称 描述 cpp C预处理器 gcc C compiler g++ C++ compiler gcov 覆盖测试工具,用于分析在程序的哪个位置做优化效果最佳 libgcc GCC 的运行库 libstdc++ 标准 C++库 libsupc++ 提供支持 C++语言的函数库 阅读全文
posted @ 2021-09-24 19:39 海林的菜园子 阅读(486) 评论(0) 推荐(0) 编辑
摘要:概述 makefile常用来管理编译,控制生成最终代码的过程 make是可执行程序,用来执行makefile脚本的。 make工具源代码地址http://ftp.gnu.org/gnu/make/ makefile脚本在执行时,先看需要的目标在不在,若在,会检查各个源文件的时间stamp,若有时间变 阅读全文
posted @ 2021-06-10 15:59 海林的菜园子 阅读(64) 评论(0) 推荐(0) 编辑
摘要:1. 什么是交叉编译 交叉编译,举例来说就是在x86的PC机上编译ARM程序,然后将ARM程序放到ARM开发板上运行。 2. 如何获何得工具链 从芯片厂商那里获得 3. 设置工具链路径 由于平时开发使用的平台各种各样,所以我喜欢采用如下方法 方法1: 在shell中输入如下命令即可 export P 阅读全文
posted @ 2021-04-13 14:53 海林的菜园子 阅读(200) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示