- 编译器(thrift代理类生成工具thrift.exe)源码:compilercppcompiler.sln
- 安装flex、bision、m4、regex,配置环境变量(Path中添加:C:GnuWin32 )
http://jaist.dl.sourceforge.net/project/gnuwin32/regex/2.7/regex-2.7-setup.exe
http://jaist.dl.sourceforge.net/project/gnuwin32/sed/4.2.1/sed-4.2.1-setup.exe
http://pilotfiber.dl.sourceforge.net/project/gnuwin32/bison/2.4.1/bison-2.4.1-setup.exe
http://pilotfiber.dl.sourceforge.net/project/gnuwin32/flex/2.5.4a-1/flex-2.5.4a-1.exe
注意:安装目录中不要有空格,如“C:Program Files (x86)GnuWin32”此类目录是不行的,我直接改成“C:GnuWin32 ” 了。 - 重启VS
- 编译,报错,缺少:unistd.h
- 编译,报错,缺少version.h
e:参考资料 hrift hrift-mastercompilercppsrcgenerate _generator.h(30): fatal error C1083: 无法打开包括文件: “version.h”: No such file or directory将:compilercppversion.h.in文件复制到compilercppsrc下,改名:version.h
- 继续编译,通过...
- 生成代理类命令:D:xxx hrift -gen go/csharp xxxx.thrift,可创建bat文件一键生成
- 如需调整thrift代理类默认的生成逻辑,定制自己的thrift代码生成器,修改相应的generate文件即可,如:t_csharp_generator.cc、t_go_generator.cc等,修改后重新编译thrift.exe文件,然后再去生成代码