The thrift compiler is supposed to be built statically linked with a
static runtime, making it portable.  This is how the Windows one is
built (using a windows docker build container, no less!) which is why
we can safely distribute it as an executable.  I think the linux one
is only built with dynamic linking right now.  If we changed that we
could make the thrift binary downloadable for every platform instead
of just windows; of course this means whomever is doing the release
needs access to a Mac, or we'll have to use CI to build it on Travis
and push it somewhere.  Right now the only official download is from
Apache or a mirror, with signatures to validate content, and only for
the Windows thrift compiler.  I'll see what I can do about the others.

- Jim


- Jim

On Tue, May 28, 2019 at 8:14 AM Christofer Dutz
<[email protected]> wrote:
>
> Yeah well ...
>
> Was hoping on a way that's more in line with the Apache rules for 
> distributing stuff.
> Using third party docker releases for using Apache products doesn't quite 
> feel right.
>
> We could probably use our build as we have it and deploy the zip artifacts to 
> Maven,
> but this would sort of feel like Apache PLC4X releasing binary artifacts of 
> Apache Thrift code,
> which also doesn't really feel great.
>
> Chris
>
>
> Am 28.05.19, 13:39 schrieb "James E. King III" <[email protected]>:
>
>     A linux docker container is maintained by the docker team for the
>     thrift compiler.
>
>     Note these are marded as "official" for docker, but they are not
>     distributed by the thrift project at this time:
>
>     https://hub.docker.com/_/thrift/
>
>     As for Mac, not sure.  If you have something like artifactory / jfrom
>     / bintray / S3 you could build the compiler once and push it into one
>     of those, and have your build pull it as needed.
>
>     - Jim
>
>     On Tue, May 28, 2019 at 4:52 AM Christofer Dutz
>     <[email protected]> wrote:
>     >
>     > Hi all,
>     >
>     > in the Apache PLC4X project, we’re currently experimenting with using 
> thrift for inter-project communication (Agent to Proxy communication)
>     > We didn’t want to add yet another third party dependency to the list of 
> things users have to install. Mainly because this way we don’t have control 
> over the version.
>     > So in order to be able to do this, we integrated building of the thrift 
> compiler and it’s library modules into our build. This worked, however it 
> increases build time and build complexity.
>     >
>     > So I wanted to know:
>     >
>     >   *   Would it be possible for the thrift project to distribute mac, 
> linux, win binary versions of the thrift compiler (I know there are Windows 
> version, but not for the others)
>     >   *   How are other projects integrating thrift in their builds?
>     >
>     > Here’s a link to the pom we use to build thrift compiler and libs on 
> any of the above platforms:
>     >
>     > https://github.com/apache/plc4x/blob/develop/tools/thrift/pom.xml
>     >
>     > Chris
>
>

Reply via email to