Linux系统编译boa-0.94-13出错信息问题
浏览:45日期:2022-07-27
; 编译一个linux下的c系统,包含词法和语法分析模块,Linux上用bison和flex。 yacc是一个文法分析器的生成器,bison即是yacc的GNU版本.Lex和YACC是用于构造词法分析机和语法解释器的工具,利用Lex和YACC你可以轻松的构造一个语法解释器。;一开始make 错误1: debian:/home/a/boa-0.94.13/src# make yacc -d boa_grammar.y make: yacc: Command not found make: *** [y.tab.c] Error 127 解决方法: debian:/home/a/boa-0.94.13/src# apt-get install bison 错误2: debian:/home/a/boa-0.94.13/src# make lex boa_lexer.l make: lex: Command not found make: *** [lex.yy.c] Error 127 解决方法: debian:/home/a/boa-0.94.13/src# apt-get install flex 错误3: debian:/home/a/sss/boa-0.94.13/src# make gcc -g -O2 -pipe -Wall -I. -c -o util.o util.c util.c:100:1: error: pasting "t" and "->" does not give a valid preprocessing token make: *** [util.o] Error 1解决方法: 修改 src/compat.h 找到 #define TIMEZONE_OFFSET(foo) foo##->tm_gmtoff 修改成 #define TIMEZONE_OFFSET(foo) (foo)->tm_gmtoff 然后 debian:/home/a/sss/boa-0.94.13/src# make clean debian:/home/a/sss/boa-0.94.13/src# make 出现: debian:/home/a/sss/boa-0.94.13/src# make make: Nothing to be done for `all'. 说明make没有检查到需要编译的东西,库或者应用程序已经编译好了。 make主要检查的是时间戳,只要target比依赖的文件时间靠后它就认为不需要编译。
标签:
Linux系统
相关文章:1. 锐龙版华硕无畏16 2022笔记本上架 首发价3999元2. Linux 5.15发布 新增对英特尔DG2 独显的初步支持3. i5-12400超频测试 成功让主板达到了5.24GHz4. 华硕Zenbook Pro 16X OLED参数亮点介绍 可选RTX30605. appdata文件夹在哪里详细介绍6. 惠普星13 Air轻薄本重量仅960g 电池续航时间10.5小时7. 英特尔锐炫A770/A750独显价格与i7-12700K处理器类似8. 荣耀MagicBook 14价格4999元起 显卡最高可选RTX 20509. AMD锐龙700系列国行价格公布:16核心 售价仅5499元10. 宏碁Swift X 2022款曝光 或将配备英特尔Arc独显

