Hello Todd, On Fri, Feb 08, 2019 at 11:41:05AM -0500, Todd Rme wrote: > On 2019/02/02 10:00:37, Suvayu Ali <[email protected]> wrote: > > > 1. Fedora doesn't allow including external dependencies. In my experience> > > building arrow on Fedora, the way external deps like Protobuf, Thrift, > > RE2,> > > etc are handled is unlikely to pass package review. There maybe > > exceptions,> > > but it has to be well justified (e.g. ROOT).> > > openSUSE has a similar policy, with an additional caveat: openSUSE > usually doesn't allow static libraries. So even if system libraries > were supported, we wouldn't be able to use them because arrow requires > them to be statically linked. So supported dynamically linked > libraries would be needed.
I think on Fedora that is also true in general. But I believe there are static builds available for certain libraries (e.g. llvm, boost). That said, are you sure static linking is required by arrow? When I look at the output of ldd run against the arrow libraries, I see the dynamic system libraries I did manage to link against (boost and zlib). I also see the linking between the different arrow libraries like, libgandiva and libplasma linking to libarrow. If I understand correctly, static linking is used for the dependencies that are _not_ taken from the system, so in my case that would be double-precision, thrift, etc. > > 2. As of today, I have been unable to build pyarrow on Fedora. It has to > > be built> > > against the distribution packages, relying on Conda will most definitely > > fail> > > package review.> > > Same here. Do you have an issue number so I can check if it is the > same problem? Unfortunately no. I have not documented it well enough to report. Also, I felt somewhat discouraged as the recommendation is to always use conda, or maybe docker. From the perspective of the dev community it's understandable as getting bogged down in distro specific issues is probably not the best use of time. That said, I could always build Arrow C++, but building the wheel with the C++ libraries bundled has been a problem. I vaguely recall a pyarrow build without the bundled C++ libraries succeed. Maybe that's a good option for distro builds. I'll explore a bit this weekend. Cheers, -- Suvayu Open source is the future. It sets us free.
