
编译器
leon_2016
将数据通过链路安全送达目的地,语言、机制只不过是一种手段或者工具。
展开
-
1.关于GCC版本导致的差异--宏 -D
**1.前言** GCC版本的差异.root@ubuntu: gcc -v gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5)root@ubuntu: arm-linux-gcc -v gcc version 4.3.2 (Sourcery G++ Lite 2008q3-72)root@ubuntu: arm-linux-gn原创 2016-06-20 21:25:22 · 1698 阅读 · 0 评论 -
多个shell命令组合
1.概述 在项目开发中,会依赖许多标准库或者头文件。而我们又不知道该库在哪个路径下面,我们可以使用某些编译器所自带的属性来操作。2.命令 ⑴首先 man gcc ,然后 /print ...skipping... -femit-struct-debug-reduced -femit-struct-debug-detailed[=spec-list]原创 2016-08-26 09:40:49 · 953 阅读 · 0 评论 -
查找ko文件中text段的某个函数名
1.前言 目的是找到ko_hi3518目录下某个ko文件中是否存在某个函数定义的地方。 如:查找CMPI_CreateProc是在哪个驱动文件中实现的。2.ko_hi3518目录acodec.ko hi3518_ai.ko hi3518_group.ko hi3518_rc.ko hi3518_vda.ko hidmac.ko原创 2016-09-28 10:15:01 · 3526 阅读 · 0 评论 -
项目经验之谈 —— 利用编译器及C语言特性<位域>进行内存边界检测
1.前言2.校验3.源码#include <unistd.h>#include <stdio.h>#include <fcntl.h>#include <sys/wait.h>#include <sys/stat.h>#include <sys/types.h>#include <getopt.h>#include <stdlib.h>#include <string.h>#defi原创 2017-03-17 15:44:53 · 1069 阅读 · 0 评论 -
查找系统定义size_t , va_list , va_start , va_end 等不常见宏(变量)头文件所在
1.序在创建一个新项目时,往往我们会使用到如: size_t , va_list , va_start , va_end ,false , true 等不常见宏(变量),经常会报错,说未定义。而这些宏(变量)又不是在标准的glibc库当中实现的,而是gcc中实现/定义。使用man命令压根找不到信息,这里我们需要一点技巧。2.例子这里写代码片原创 2017-11-10 16:00:16 · 1229 阅读 · 0 评论 -
GCC选项——不使用默认系统库函数及不搜索默认头文件路径
1.序 在某些特殊情况,不需要使用系统自带的库及头文件(比如使用GCC编译实时系统时),那么就需要指定参数,不去搜索默认路径及库文件。2.命令选项 -nostdinc 不搜索默认路径头文件-nostdinc Do not search the standard system directories for header fles. Only the directories yo原创 2017-11-17 09:02:01 · 11897 阅读 · 0 评论 -
查看可执行程序(ELF)或动态库所依赖动态库——ldd脚本分析
1.序 搞清可执行程序(动态库)所依赖的动态库信息是非常有帮助的。2.查看方法系统信息:Linux netview 4.4.0-101-generic #124~14.04.1-Ubuntu SMP Fri Nov 10 19:06:11 UTC 2017 i686 i686 i686 GNU/Linux2.1 使用 ldd# ldd `which gdb`linux-gate.so.1 =>原创 2017-11-24 09:56:25 · 7619 阅读 · 0 评论 -
应用程序——链接脚本
1.序 应用程序也可以像内核一样按照一定规则的组织模块。通过链接脚本就可以做到。2.查看默认链接脚本 没有链接脚本,程序也是不知道如何在内存当中进行组织的。只不过一般情况下,做应用的程序员不 需要关心而已。leon@netview:~$ leon@netview:~$ ld --verboseGNU ld (GNU Binutils for Ubuntu) 2.24 Sup原创 2017-11-27 17:23:02 · 842 阅读 · 0 评论