编译系统的组成
cmake、autoconf/automake无组建系统, 为了解决Makefile难以书写问题
由于make运行时需要把每个文件夹下的Makefile都include 进来,比较耗时,于是开发出ninja组建系统,它运行时只解析 一个build文件,运行效率比较高. 手工写ninja的build文件很麻烦,所以niija组建系统几乎要配元组建系统 ,当只修改源码内容只运行nija命令, 当程序结构发生变化 星要用元组建系统重新生成ninja的build文件
编译分前后端,为什么区分前后端,是因为前端是通用的, 这样可以实现移植别的系统只使用后端进行编译即可
词法分析器: lex , 生成编译器的编译器: yacc
典型linux词法分析器:flex, 生成编译器的编译器: bison
参考链接: https://mp.weixin.qq.com/s?src=11×tamp=1663766045&ver=4058&signature=gq9ZPCDu17xmWnIrDvEIE*C9nbJQ4YGzV6X9AhQZZzGmBIyw9f5bBCMakEqao8pE8tdyni6WpBRxkHVvMUzSzFXpwkdA1803rA-U2EqYtvtb9enPi8GK6ReTuOAWUsCo&new=1
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
2017-09-21 软件架构的理解
2017-09-21 jquery正则表达式