Well, I have to put the work aside temporarily because I do not know how to write the CMakeList.txt now... I thought that if I have installed CMake and Thrift well, I just need to run something like `g++ -o something.cpp -lthrift` in [1] ... I was too young to naive...
[1] https://github.com/apache/incubator-iotdb/pull/415/files#diff-2bf8bbbfa32bdb4567f25fcef92e6655 Best, ----------------------------------- Xiangdong Huang School of Software, Tsinghua University 黄向东 清华大学 软件学院 Christofer Dutz <[email protected]> 于2019年10月16日周三 下午5:25写道: > Hi Xiangdong, > > glad you like it, however I would suggest to caution. > > While it is possible to do it as we did, it does come with a downside (As > probably all multi-language projects know). > It increases complexity of the build and it increases the complexity of > setting up the development environment and it increases the build time. > > We set up quite a bit of tooling to keep the users from stumbling into > unwanted pits, but still the plc4x community is considering the current > build to be too complex. > > So I am happy to help you with this, but I would like you to think about > the implications and discuss them in the community first. > > > Chris > > > Am 16.10.19, 11:16 schrieb "Xiangdong Huang" <[email protected]>: > > Hi, > > I read how plc4x organizes the modules and pom files. It is awesome > that > using maven to build a so complex project (with many subprojects...). > > I'd like to organize IoTDB thrift codes like: > > ``` > service-rpc/ > ├── pom.xml > ├── rpc4cpp > │ └── pom.xml > ├── rpc4java > │ └── pom.xml > ├── src > │ └── main > │ └── thrift > │ └── rpc.thrift > └── target > ``` > > The organize is quite like plc-tools module. The difference is that, I > want > to put the generated codes (defined by > service-rpc/src/main/thrift/rpc.thrift and automatically generated by > plugin in the service-rpc/pom.xml) into rpc4cpp/target, > rpc4java/target. > > Then, when compiling rpc4cpp module according to rpc4cpp/pom.xml, > maven > download cmake and some other binaries to compile the codes under the > rpc4cpp/target. > > I think maybe I can follow how plc4x using Maven to compile CPP codes > automatically, and will try it these days. > > Best, > ----------------------------------- > Xiangdong Huang > School of Software, Tsinghua University > > 黄向东 > 清华大学 软件学院 > > > Xiangdong Huang <[email protected]> 于2019年10月13日周日 上午8:07写道: > > > Hi Chris, > > > > Of course I want to compile the generated codes... Please give us > help. :D > > > > Best, > > ----------------------------------- > > Xiangdong Huang > > School of Software, Tsinghua University > > > > 黄向东 > > 清华大学 软件学院 > > > > > > Christofer Dutz <[email protected]> 于2019年10月12日周六 下午5:06写道: > > > >> Well it generates the api, but doesn't build it as a module, > correct? > >> > >> Was not referring to if you wanted to also compile the generated > stuff. > >> > >> Chris > >> > >> Holen Sie sich Outlook für Android<https://aka.ms/ghei36> > >> > >> ________________________________ > >> From: Xiangdong Huang <[email protected]> > >> Sent: Saturday, October 12, 2019 9:07:47 AM > >> To: [email protected] <[email protected]> > >> Subject: Re: More programming language APIs generated by Thrift > >> > >> Hi Chris, > >> > >> I have used maven plugin to generate these language apis in [1]. > Are there > >> some other suggestions? > >> > >> [1] https://github.com/apache/incubator-iotdb/pull/445 > >> > >> Best, > >> ----------------------------------- > >> Xiangdong Huang > >> School of Software, Tsinghua University > >> > >> 黄向东 > >> 清华大学 软件学院 > >> > >> > >> Christofer Dutz <[email protected]> 于2019年10月11日周五 > 下午3:59写道: > >> > >> > Hi all, > >> > > >> > having done all the Thrift compilation stuff for PLC4X I guess I > might > >> be > >> > able to help here. > >> > > >> > Chris > >> > > >> > Am 11.10.19, 09:17 schrieb "Xiangdong Huang" <[email protected] > >: > >> > > >> > Hi, > >> > > >> > I notice there are some PRs [2][3] for generating CPP, python > apis > >> by > >> > using > >> > thrift. > >> > > >> > Actually it can be compiled automatically by Maven. > >> > > >> > Chris introduced a maven-thrift-plugin several months ago. > And, just > >> > modifying the configuration can archive that.. > >> > > >> > Using PR [1], we can generate cpp, python, and go apis under > >> > server-rpc/target/generated-sources-{language}. > >> > > >> > For other PRs, maybe you just need to write examples about > how to > >> use > >> > these > >> > api... (and some docs?) > >> > > >> > > >> > [1] https://github.com/apache/incubator-iotdb/pull/445 > >> > [2] https://github.com/apache/incubator-iotdb/pull/444 > >> > [3] https://github.com/apache/incubator-iotdb/pull/415 > >> > > >> > Best, > >> > ----------------------------------- > >> > Xiangdong Huang > >> > School of Software, Tsinghua University > >> > > >> > 黄向东 > >> > 清华大学 软件学院 > >> > > >> > > >> > > >> > > > > >
