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 >> >> >>