Worked like a charm. Thanks a lot! Much appreciated! -- Rares On Tue, Dec 11, 2018 at 11:20 PM Kouhei Sutou <k...@clear-code.com> wrote:
> Hi, > > Can you try "-DBOOST_ROOT=${YOUR_BOOST_INSTALL_PREFIX}" option? > > > Thanks, > -- > kou > > In <CALQ9KxDYiMsBGLJM96rQwvM6f=wme2dyke647dcqirnxxax...@mail.gmail.com> > "Re: C++ buildings and Regex issue" on Tue, 11 Dec 2018 22:53:58 -0800, > Rares Vernica <rvern...@gmail.com> wrote: > > > Hi, > > > > Unfortunately we need to stay on CentOS 6 for now. > > > > We have a locally built libboost-devel-1.54 for CentOS 6 which installs > in > > a custom location. I added the installation steps at the end of > > > https://github.com/apache/arrow-dist/blob/master/cpp-linux/yum/centos-6/Dockerfile > > and the library is in the Docker container now. How can I ask Arrow to > pick > > up this Boost library from its custom location? > > > > Right now I see this: > > > > > /root/rpmbuild/BUILD/apache-arrow-0.9.0/cpp/src/arrow/io/hdfs-internal.cc:204:7: > > error: 'class boost::filesystem::basic_path<std::basic_string<char>, > > boost::filesystem::path_traits>' has no member named 'make_preferred' > > i.make_preferred(); > > ^~~~~~~~~~~~~~ > > > /root/rpmbuild/BUILD/apache-arrow-0.9.0/cpp/src/arrow/io/hdfs-internal.cc:205:27: > > error: 'class boost::filesystem::basic_path<std::basic_string<char>, > > boost::filesystem::path_traits>' has no member named 'native' > > out_handle = dlopen(i.native().c_str(), RTLD_NOW | RTLD_LOCAL); > > > > and I assume Arrow is picking up the default CentOS Boost, which as you > > mention it won't work. > > > > Thanks! > > Rares > > > > > > On Tue, Dec 11, 2018 at 10:18 PM Kouhei Sutou <k...@clear-code.com> > wrote: > > > >> Hi, > >> > >> You can't use system Boost on CentOS 6. Because system Boost > >> is old. It's better that you upgrade to CentOS 7. > >> > >> Thanks, > >> -- > >> kou > >> > >> In <calq9kxcqu7qmchmtmesadv4rahcvm-+4ibe1bt3j2x8rrwd...@mail.gmail.com> > >> "Re: C++ buildings and Regex issue" on Tue, 11 Dec 2018 22:07:20 > -0800, > >> Rares Vernica <rvern...@gmail.com> wrote: > >> > >> > Wes, > >> > > >> > Thanks! We do plan to upgrade, as soon as we put down the fire. We > >> noticed > >> > some API changes and we will have to get our code updated. > >> > > >> > It looks like it is boost::regex. In our application we link > dynamically > >> > against a locally compiled Boost. For Arrow we noticed this for CentOS > >> > > >> > https://github.com/apache/arrow-dist/blob/master/cpp-linux/yum/arrow.spec.in#L69 > >> > > >> > %if %{_centos_ver} == 6 > >> > -DARROW_BOOST_VENDORED=ON \ > >> > %endif > >> > > >> > I tried replacing it with > >> > > >> > -DARROW_BOOST_USE_SHARED=ON > >> > > >> > but it does not look like it is going to build > >> > > >> > > >> > /root/rpmbuild/BUILD/apache-arrow-0.9.0/cpp/src/arrow/io/hdfs-internal.cc:204:7: > >> > error: 'class boost::filesystem::basic_path<std::basic_string<char>, > >> > boost::filesystem::path_traits>' has no member named 'make_preferred' > >> > i.make_preferred(); > >> > ^~~~~~~~~~~~~~ > >> > > >> > /root/rpmbuild/BUILD/apache-arrow-0.9.0/cpp/src/arrow/io/hdfs-internal.cc:205:27: > >> > error: 'class boost::filesystem::basic_path<std::basic_string<char>, > >> > boost::filesystem::path_traits>' has no member named 'native' > >> > out_handle = dlopen(i.native().c_str(), RTLD_NOW | RTLD_LOCAL); > >> > > >> > I remember we had a similar conflict with ProtocolBuffers. In that > case, > >> > changing Arrow to use the system provided version did the trick. > >> > > >> > Thanks, > >> > Rares > >> > > >> > > >> > > >> > > >> > > >> > > >> > > >> > > >> > > >> > > >> > > >> > On Tue, Dec 11, 2018 at 9:30 PM Wes McKinney <wesmck...@gmail.com> > >> wrote: > >> > > >> >> hi, > >> >> > >> >> Could you clarify what you mean by "regex calls"? Are you talking > >> >> about boost::regex, std::regex, something else? How did you link the > >> >> relevant libraries in each part of your application, and in the Arrow > >> >> + Parquet libraries > >> >> > >> >> 0.9.0 is over 1000 patches ago. I'd recommend that you try to upgrade > >> >> > >> >> $ git hist apache-arrow-0.9.0..master | wc -l > >> >> 1540 > >> >> > >> >> - Wes > >> >> On Tue, Dec 11, 2018 at 10:58 PM Rares Vernica <rvern...@gmail.com> > >> wrote: > >> >> > > >> >> > Hello, > >> >> > > >> >> > We are using the C++ bindings of Arrow 0.9.0 on our system on > CentOS. > >> >> Once > >> >> > we load the Arrow library, our regular regex calls (outside of > Arrow) > >> >> > misbehave and trigger some unknown crashes. We are still trying to > >> figure > >> >> > things out but I was wondering if there are any know issues > regarding > >> >> regex > >> >> > and the C++ binding. Also, how can one turn on/off flags related to > >> regex > >> >> > when compiling Arrow? We are still trying to isolate the crash. > >> >> > > >> >> > Thanks! > >> >> > Rares > >> >> > >> >