嵌入式设计拓展3

编译器优化 -O1 -O2 -O3

  • O1 提供基础级别的优化
    对程序做部分编译优化,对于大函数,优化编译占用稍微多的时间和相当大的内存。使用本项优化,编译器会尝试减小生成代码的尺寸,以及缩短执行时间,但并不执行需要占用大量编译时间的优化。

  • O2提供更加高级的代码优化,会占用更长的编译时间
    是比O1更高级的选项,进行更多的优化。Gcc将执行几乎所有的不包含时间和空间折中的优化。当设置O2选项时,编译器并不进行循环打开()loop unrolling以及函数内联。与O1比较而言,O2优化增加了编译时间的基础上,提高了生成代码的执行效率。

  • O3提供最高级的代码优化
    比O2更进一步的进行优化。在包含了O2所有的优化的基础上,又打开一些优化选项

    少优化->多优化: O1 -->> O2 -->> O3
    gcc -static作用:表示的是编译的时候禁止调用动态库

gdb:

  • gcc/g++ -g main.c 生成可调试的执行文件
  • gdb -p pid 调试某个进程 pid->进程号
  • gdb main.out 调试可执行文件
  • gdb -c core.xxx main.out 调试core文件
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值