如何消除flex&bison的’main’例程,以便将lexing和解析过程放入库中?

前端之家收集整理的这篇文章主要介绍了如何消除flex&bison的’main’例程,以便将lexing和解析过程放入库中?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在研究解析json字符串的解析器,我想把它变成一个库.
问题是,当我使用ld链接我写的库时,
有一条错误消息:
main.o: In function `main':
main.c:(.text+0x0): multiple definition of `main'
json-parser.o:/build/buildd/flex-2.5.35/libmain.c:29: first defined here

我怎样才能解决这个问题..?谢谢.

解决方法

使用gcc -o charcount charcount.o -lfl而不是gcc -o charcount -lfl charcount.o可能会有所帮助.

奇怪的是,目标文件和共享库的顺序在这里具有重要意义,但是返回确实有效.

猜你在找的Flex相关文章