弦外之音

公告:《FFmpeg原理》一书创作中,访问地址:ffmpeg.xianwaizhiyin.net

首先,无论是写作,还是录视频,都是提高自己能力的一种方式。因为一个技术知识点,你需要自己先学会,才能用通俗的语言给别人讲明白。我特别喜欢用写作这种方式来学习。 在工作中开发项目的时候,时间非常紧迫的,有时候 项目要...

发布 1 条评论

Gitbook 是一个非常好用的写书软件,可以把 markdown 的文件生成章节。不过由于这个软件是 nodejs 写的,用比较新的版本总是会有一些bug,通常会遇到以下错误: 1,cb.apply is not a function 2,Error: ENOENT: no such file...

发布 0 条评论

前面已经把 可运行文件格式 ELF,链接器 ld ,汇编器 gas 简单介绍了一下,终于到了要讲 编译器的章节。实际上在 整个编译系统里面,编译器是最重要的,开发难度也是最高的。链接器,汇编器做的都是一些简单的工作。 我们通常 会...

发布 0 条评论

Linux 环境的的汇编器是 gas,也叫做 as,实际上 汇编器 as 的调试环境搭建,跟之前的 链接器的调试环境搭建非常类似的,因为 as 跟 ld 的代码都在 binutils 项目里面。阅读本文需要参考之前的 《编译系统-自底向上研究方法》用clion...

发布 0 条评论

之前的文章 《编译系统-自底向上研究方法》ELF符号段,《编译系统-自底向上研究方法》链接器分析, 已经讲解了 可运行文件格式 ELF 以及 链接器的一些主要的作用。 无论是 操作系统运行 可执行文件,还是 链接器 把多个 .o 目标文...

发布 0 条评论

源码下载地址:百度网盘,提取码:cat1 。 之前的文章已经讲解了如何在 clion 里面调试 ld 链接器,本文不打算讲 链接器的源码逻辑,因为我也没看,我也不会,本文主要讲 链接器 主要做了什么事情。 第一件事,修正地址。我们...

发布 0 条评论

源码下载地址:百度网盘,提取码:cat1 。 通过前面的文章分析,读者应该已经对 可执行文件 ELF 的格式有一定了解,本文主要讲解,链接器 ld 是如何把 main.o 跟 sum.o 链接在一起的。 先执行以下命令,编译出来 main.o 跟 sum...

发布 0 条评论

源码下载地址:百度网盘,提取码:cat1 。 通过前面的文章《编译系统-自底向上研究方法》ELF符号段 ,基本已经知道了 符号表的 作用,就是能找到 变量,或者函数的位置。还是用 main 项目来分析,项目里面有个 sum.c 文件,里面有...

发布 0 条评论

源码下载地址:百度网盘,提取码:cat1 。 本文来讲解 ELF 里面的 符号段 symtab,也可以叫 符号表,因为相对于 段表 来说,symtab 他是一个段。但是对于 各个符号项 来说,symtab 他是一个表。所以把他叫成 是段 或者是表都可以...

发布 0 条评论

《编译系统-自底向上研究方法》ELF头部 ,之前这篇文章讲解了 ELF 的头部,头部有几个段表的字段,当时没有仔细讲解。 1,e_shoff ,段表的指针,也就是段表在 main 文件的偏移值。 2,e_shensize,段表中单个段的大小。 3...

发布 0 条评论