
开源代码
文章平均质量分 89
偏test
这个作者很懒,什么都没留下…
展开
-
lemon源码分析
基本概念见上篇《lemon源码基本概念整理》1. follow集对于如下4条产生式 program ::= expr TK_SEM expr ::= expr TK_IMPL expr expr ::= TK_LPAREN expr TK_RPAREN expr ::= TK_NEG expr现在要求expr ::= TK_LPAREN expr TK_RPAREN*的follow集方法如下 exp原创 2021-03-07 19:16:15 · 793 阅读 · 0 评论 -
lemon源码基本概念整理
1 数据结构1.1 字符串存储定义一个x1a的全局变量,存放.y文件经过词法分析器分割出来的字符串struct s_x1 { int size; /* The number of available slots. */ /* Must be a power of 2 greater than or */ /* equal to 1 */ int count原创 2021-03-04 21:24:33 · 805 阅读 · 1 评论 -
gobject调试环境搭建
1 初步使用新建个工程,把下面这个demo里的3个文件拷贝到src目录https://github.com/zorgnax/gobject-examples/tree/master/01-media-from-book编写Makefile# 请自行新建一个bld文件夹OBJ_DIR = ../bld# 获取所以源文件 SRC = cleanable.c media.c# 把.c后缀替换为.o,并加上目录 OBJ = ${patsubst %.c, ${OBJ_DIR原创 2021-02-26 08:35:31 · 1140 阅读 · 0 评论 -
搭建msys2基础开发平台
1.环境搭建最近msys2的软件源进行了更新,一些低版本的软件都没有了,gcc只有9.3以上版本,gdb只有9.1以上版本,没有低版本,那以后只能跟着软件源的最新版本走了,如果碰到软件依赖版本不兼容将会是一个非常棘手的问题,而且gcc和gdb正在狂热的将c代码都替换为c++,但是我本人不太喜欢c++,所以尝试搭建一个不依赖软件源的平台。清华和腾讯开源镜像都已经随着官方的源更新了,幸好华为和浙大的镜像还没更新,但是迟早也会更新的,所以在他们更新之前赶紧把这个事情做了。基础安装包,我用的是msys2-ba原创 2020-10-24 21:58:09 · 3137 阅读 · 3 评论 -
gcc源码编译
编译是基于msys2平台,使用的源码是gcc-7.3.0-1.src.tar.gz解压后执行 makepkg --skippgpcheck会报错,提示缺少依赖,根据错误提升安装相关依赖pacman -S mpc-devel gmp-devel mpfr-devel isl-devel出现找不到cmp的命令需要安装diffutils: pacman -S diffutils继续执行ma...原创 2020-05-08 08:08:05 · 1484 阅读 · 0 评论 -
fossil源码编译
fossil是一个类似git的版本控制工具,是由SQLite作者写的,代码的水平应该比较高,fossil还提供了web展示的功能,支持http接口,综合性比较强,对于c语言程序员来说也可以初步了解一些前端和后端的知识,比较有学习价值。1.源码下载学习代码最好的方式当然是自己编译并调试,我是基于msys2开发环境。首先到官网下载发布的版本,选择Source Tarball下载http://w...原创 2020-04-18 08:56:04 · 1003 阅读 · 1 评论