You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@arrow.apache.org by Fan Liya <li...@gmail.com> on 2020/05/11 02:22:28 UTC

Problem with building C++ flight code

Hi all,

I was using the following command to build the flight code:

cmake -DCMAKE_BUILD_TYPE=Debug -DARROW_FLIGHT=ON ../arrow/cpp
make arrow_flight

and got the following error:

fatal error: boost/process.hpp: No such file or directory

After some investigation, it seems the  boost/process.hpp file is released
with boost 1.64.0 (https://github.com/boostorg/process), but our building
system is based on boost 1.71.0, which does not include this file.

I tried to install the process library manually, but failed because of
other files missing in the boost library.

Could you please give some hints about the problem?

Best,
Liya Fan

Re: Problem with building C++ flight code

Posted by Fan Liya <li...@gmail.com>.
Hi Neal,

Thanks a lot for your kind reply.
I have opened ARROW-8771 to track it.

Best,
Liya Fan


On Tue, May 12, 2020 at 4:03 AM Neal Richardson <ne...@gmail.com>
wrote:

> We maintain a slimmer version of boost that only includes the modules Arrow
> requires. See
> https://github.com/apache/arrow/blob/master/cpp/build-support/trim-boost.sh
> .
>
> I don't see process.hpp included, so it must not have been documented
> previously that we required it. We can add it to the list. Could you make a
> JIRA please?
>
> FWIW I see #include <boost/process.hpp> in only 3 places in `cpp/`, all of
> which are test helpers. So I am guessing that if you build with the C++
> tests turned off, then it should compile.
>
> Neal
>
> On Mon, May 11, 2020 at 2:25 AM Fan Liya <li...@gmail.com> wrote:
>
> > Hi Antoine,
> >
> > I manually downloaded a boost package from https://www.boost.org/
> > <
> >
> https://www.boost.org/doc/libs/1_73_0/doc/html/process.html#boost_process.introduction
> > >,
> > and verified that you are right.
> > Thank you!!!
> >
> > It seems the one automatically downloaded when running make command is
> not
> > complete either, from the content
> > of boost_ep-prefix/src/boost_ep-stamp/boost_ep-urlinfo.txt file,
> > the package seems to be downloaded from:
> >
> > repository='external project URL'
> > module='
> >
> >
> https://dl.bintray.com/ursalabs/arrow-boost/boost_1_71_0.tar.gz;https://dl.bintray.com/boostorg/release/1.71.0/source/boost_1_71_0.tar.gz;https://github.com/boostorg/boost/archive/boost-1.71.0.tar.gz;https://github.com/ursa-labs/thirdparty/releases/download/latest/boost_1_71_0.tar.gz
> > '
> > tag=''
> >
> > Best,
> > Liya Fan
> >
> >
> > On Mon, May 11, 2020 at 3:45 PM Antoine Pitrou <an...@python.org>
> wrote:
> >
> > >
> > > Le 11/05/2020 à 05:37, Fan Liya a écrit :
> > > > Hi Wes,
> > > >
> > > > Thanks a lot for your kind reply.
> > > >
> > > > It did not work for me.
> > > > Please note that we have two boost libraries in our system: one is
> > > > installed by running yum install ...; and the other is downloaded by
> > GNU
> > > > make when building the code.
> > > > Neither of the boost libraries has the boost/process.hpp file.
> > > >
> > > > It seems the  boost/process.hpp file no longer exists in high version
> > > boost
> > > > libraries.
> > >
> > > I doubt so. This is the doc for version 1.73.0:
> > >
> > >
> >
> https://www.boost.org/doc/libs/1_73_0/doc/html/process.html#boost_process.introduction
> > >
> > > Your boost install is probably incomplete.
> > > You probably want something like `yum install boost-process`.
> > >
> > > Regards
> > >
> > > Antoine.
> > >
> >
>

Re: Problem with building C++ flight code

Posted by Neal Richardson <ne...@gmail.com>.
We maintain a slimmer version of boost that only includes the modules Arrow
requires. See
https://github.com/apache/arrow/blob/master/cpp/build-support/trim-boost.sh.

I don't see process.hpp included, so it must not have been documented
previously that we required it. We can add it to the list. Could you make a
JIRA please?

FWIW I see #include <boost/process.hpp> in only 3 places in `cpp/`, all of
which are test helpers. So I am guessing that if you build with the C++
tests turned off, then it should compile.

Neal

On Mon, May 11, 2020 at 2:25 AM Fan Liya <li...@gmail.com> wrote:

> Hi Antoine,
>
> I manually downloaded a boost package from https://www.boost.org/
> <
> https://www.boost.org/doc/libs/1_73_0/doc/html/process.html#boost_process.introduction
> >,
> and verified that you are right.
> Thank you!!!
>
> It seems the one automatically downloaded when running make command is not
> complete either, from the content
> of boost_ep-prefix/src/boost_ep-stamp/boost_ep-urlinfo.txt file,
> the package seems to be downloaded from:
>
> repository='external project URL'
> module='
>
> https://dl.bintray.com/ursalabs/arrow-boost/boost_1_71_0.tar.gz;https://dl.bintray.com/boostorg/release/1.71.0/source/boost_1_71_0.tar.gz;https://github.com/boostorg/boost/archive/boost-1.71.0.tar.gz;https://github.com/ursa-labs/thirdparty/releases/download/latest/boost_1_71_0.tar.gz
> '
> tag=''
>
> Best,
> Liya Fan
>
>
> On Mon, May 11, 2020 at 3:45 PM Antoine Pitrou <an...@python.org> wrote:
>
> >
> > Le 11/05/2020 à 05:37, Fan Liya a écrit :
> > > Hi Wes,
> > >
> > > Thanks a lot for your kind reply.
> > >
> > > It did not work for me.
> > > Please note that we have two boost libraries in our system: one is
> > > installed by running yum install ...; and the other is downloaded by
> GNU
> > > make when building the code.
> > > Neither of the boost libraries has the boost/process.hpp file.
> > >
> > > It seems the  boost/process.hpp file no longer exists in high version
> > boost
> > > libraries.
> >
> > I doubt so. This is the doc for version 1.73.0:
> >
> >
> https://www.boost.org/doc/libs/1_73_0/doc/html/process.html#boost_process.introduction
> >
> > Your boost install is probably incomplete.
> > You probably want something like `yum install boost-process`.
> >
> > Regards
> >
> > Antoine.
> >
>

Re: Problem with building C++ flight code

Posted by Fan Liya <li...@gmail.com>.
Hi Antoine,

I manually downloaded a boost package from https://www.boost.org/
<https://www.boost.org/doc/libs/1_73_0/doc/html/process.html#boost_process.introduction>,
and verified that you are right.
Thank you!!!

It seems the one automatically downloaded when running make command is not
complete either, from the content
of boost_ep-prefix/src/boost_ep-stamp/boost_ep-urlinfo.txt file,
the package seems to be downloaded from:

repository='external project URL'
module='
https://dl.bintray.com/ursalabs/arrow-boost/boost_1_71_0.tar.gz;https://dl.bintray.com/boostorg/release/1.71.0/source/boost_1_71_0.tar.gz;https://github.com/boostorg/boost/archive/boost-1.71.0.tar.gz;https://github.com/ursa-labs/thirdparty/releases/download/latest/boost_1_71_0.tar.gz
'
tag=''

Best,
Liya Fan


On Mon, May 11, 2020 at 3:45 PM Antoine Pitrou <an...@python.org> wrote:

>
> Le 11/05/2020 à 05:37, Fan Liya a écrit :
> > Hi Wes,
> >
> > Thanks a lot for your kind reply.
> >
> > It did not work for me.
> > Please note that we have two boost libraries in our system: one is
> > installed by running yum install ...; and the other is downloaded by GNU
> > make when building the code.
> > Neither of the boost libraries has the boost/process.hpp file.
> >
> > It seems the  boost/process.hpp file no longer exists in high version
> boost
> > libraries.
>
> I doubt so. This is the doc for version 1.73.0:
>
> https://www.boost.org/doc/libs/1_73_0/doc/html/process.html#boost_process.introduction
>
> Your boost install is probably incomplete.
> You probably want something like `yum install boost-process`.
>
> Regards
>
> Antoine.
>

Re: Problem with building C++ flight code

Posted by Antoine Pitrou <an...@python.org>.
Le 11/05/2020 à 05:37, Fan Liya a écrit :
> Hi Wes,
> 
> Thanks a lot for your kind reply.
> 
> It did not work for me.
> Please note that we have two boost libraries in our system: one is
> installed by running yum install ...; and the other is downloaded by GNU
> make when building the code.
> Neither of the boost libraries has the boost/process.hpp file.
> 
> It seems the  boost/process.hpp file no longer exists in high version boost
> libraries.

I doubt so. This is the doc for version 1.73.0:
https://www.boost.org/doc/libs/1_73_0/doc/html/process.html#boost_process.introduction

Your boost install is probably incomplete.
You probably want something like `yum install boost-process`.

Regards

Antoine.

Re: Problem with building C++ flight code

Posted by Fan Liya <li...@gmail.com>.
Hi Wes,

Thanks a lot for your kind reply.

It did not work for me.
Please note that we have two boost libraries in our system: one is
installed by running yum install ...; and the other is downloaded by GNU
make when building the code.
Neither of the boost libraries has the boost/process.hpp file.

It seems the  boost/process.hpp file no longer exists in high version boost
libraries.
So we also need to change the code accordingly?

Best,
Liya Fan


On Mon, May 11, 2020 at 10:37 AM Wes McKinney <we...@gmail.com> wrote:

> Try adding -DBOOST_SOURCE=BUNDLED. Boost is a header-only dependency
> so you don't need to depend on your system package manager's Boost
>
> On Sun, May 10, 2020 at 9:23 PM Fan Liya <li...@gmail.com> wrote:
> >
> > Hi all,
> >
> > I was using the following command to build the flight code:
> >
> > cmake -DCMAKE_BUILD_TYPE=Debug -DARROW_FLIGHT=ON ../arrow/cpp
> > make arrow_flight
> >
> > and got the following error:
> >
> > fatal error: boost/process.hpp: No such file or directory
> >
> > After some investigation, it seems the  boost/process.hpp file is
> released
> > with boost 1.64.0 (https://github.com/boostorg/process), but our
> building
> > system is based on boost 1.71.0, which does not include this file.
> >
> > I tried to install the process library manually, but failed because of
> > other files missing in the boost library.
> >
> > Could you please give some hints about the problem?
> >
> > Best,
> > Liya Fan
>

Re: Problem with building C++ flight code

Posted by Wes McKinney <we...@gmail.com>.
Try adding -DBOOST_SOURCE=BUNDLED. Boost is a header-only dependency
so you don't need to depend on your system package manager's Boost

On Sun, May 10, 2020 at 9:23 PM Fan Liya <li...@gmail.com> wrote:
>
> Hi all,
>
> I was using the following command to build the flight code:
>
> cmake -DCMAKE_BUILD_TYPE=Debug -DARROW_FLIGHT=ON ../arrow/cpp
> make arrow_flight
>
> and got the following error:
>
> fatal error: boost/process.hpp: No such file or directory
>
> After some investigation, it seems the  boost/process.hpp file is released
> with boost 1.64.0 (https://github.com/boostorg/process), but our building
> system is based on boost 1.71.0, which does not include this file.
>
> I tried to install the process library manually, but failed because of
> other files missing in the boost library.
>
> Could you please give some hints about the problem?
>
> Best,
> Liya Fan