【Booksim】Booksim2.0安装编译

  • Booksim2.0安装编译
    • [1. 从github上克隆源代码](#1. 从github上克隆源代码)
    • [2. 安装 flex bison](#2. 安装 flex bison)
    • [3. 编译Boosim](#3. 编译Boosim)

Booksim2.0安装编译

1. 从github上克隆源代码

复制代码
> git clone https://github.com/booksim/booksim2.git

2. 安装 flex bison

flex 和 bison 都是用于开发编程语言和工具的工具,它们通常一起使用来创建复杂的文本处理程序,如编译器、解释器和其他类型的语言处理工具。

  • Flex
    flex 是一个词法分析器生成器,它允许开发者通过编写一个简短的、描述性的源文件来定义一组单词(或标记),然后 flex 会自动生成一个 C 语言程序,这个程序能够识别这些单词。这个生成的程序通常被称为词法分析器或扫描器。词法分析器是编译器或解释器的第一部分,负责将输入的文本(通常是源代码)分解成一系列的标记,这些标记可以被语法分析器进一步处理。

  • Bison
    bison 是一个语法分析器生成器,它用来创建解析器,这些解析器可以理解和解释一种语言的语法规则。通过编写一个描述语法规则的源文件,bison 会生成一个 C 语言程序,这个程序可以构建抽象语法树(AST),这棵树表示了输入文本的语法结构。解析器是编译器或解释器的第二部分,它依赖于词法分析器提供的标记来正确地解析源代码的语法。
    简单来说,flex 负责标记(词法)分析,bison 负责语法(语法)分析。这两个工具一起使用,可以快速地构建一个完整的语言处理工具链,从源代码到抽象语法树,再到最终的目标代码。这种工具链在构建编译器、解释器、格式化工具和其他需要处理复杂文本的应用程序时非常有用。

    sudo apt-get install flex
    sudo apt-get install bison

3. 编译Boosim

复制代码
> cd booksim2/src
> make

如下图所示,编译成功,生成booksim执行文件。

相关推荐
沫璃染墨1 天前
《从零入门Linux系统篇(五十六):线程篇·九——生产者消费者模型:从条件变量到BlockingQueue实现》
linux·服务器·c++·驱动开发·设计模式·架构·系统架构
艺杯羹1 天前
Anthropic突袭发布Claude Code Mods!用TypeScript编写智能体中间件:告别AI误删与失控
人工智能·typescript·系统架构
沫璃染墨2 天前
《从零入门Linux系统篇(五十四):线程篇·七——互斥锁底层原理:从原子交换到线程竞争与锁实现》
linux·运维·服务器·开发语言·c++·驱动开发·系统架构
诚心呈意共享外卖配送系统2 天前
共享骑手与聚合配送的区别及系统架构设计:运力池与订单聚合如何落地
架构·系统架构·创业创新
风123456789~2 天前
【架构设计】第17章 通信系统架构设计 2/2
系统架构
诚心呈意共享外卖配送系统3 天前
众包配送调度系统选什么?聊聊派单、抢单、合单与结算的技术设计
架构·系统架构·创业创新
abigalexy3 天前
图解AI应用架构设计
人工智能·ai·架构·系统架构·aigc
沫璃染墨3 天前
《从零入门Linux系统篇(五十三):线程篇·六——线程互斥详解:从并发问题到mutex互斥锁》
linux·运维·服务器·开发语言·后端·架构·系统架构
励志不掉头发的内向程序员3 天前
【从零写一个CAD 04】中键拖动平移:抓住一个点,让它一直待在鼠标底下
开发语言·c++·qt·学习·系统架构·计算机外设
weixin_424183613 天前
开放—封闭原则实战(下):基于策略的流程编排与编译期多态
c++·分布式·系统架构