You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@arrow.apache.org by Tahsin Hassan <th...@mathworks.com> on 2019/11/14 18:22:07 UTC

Building Arrow 0.15.1 using dependencies in local source folder

Hi all,

I am trying to build out arrow 0.15.1. The dependencies for arrow, e.g. thrift, double-conversion are in a local source folder and we need to build the dependencies from that location.

I read up on
https://github.com/apache/arrow/blob/master/docs/source/developers/cpp.rst#offline-builds

  *   BUNDLED: Building the dependency automatically from source
  *   SYSTEM: Finding the dependency in system paths using CMake's built-in find_package function, or using pkg-config for packages that do not have this feature
Unfortunately, that’s not exactly what I want.
and
https://github.com/apache/arrow/blob/master/docs/source/developers/cpp.rst#offline-builds
but, that basically downloads the tar(s) into a folder extracts them and sets up build using that.
e.g.
$./download_dependencies.sh /sandbox/someArrowStuff/
# Environment variables for offline Arrow build
export ARROW_AWSSDK_URL=/sandbox/someArrowStuff/aws-sdk-cpp-1.7.160.tar.gz
export ARROW_BOOST_URL=/sandbox/someArrowStuff/boost-1.67.0.tar.gz
export ARROW_BROTLI_URL=/sandbox/someArrowStuff/brotli-v1.0.7.tar.gz
…


What I kind of wanted was , the set of environment variables that can allow to set a source folder path
export ARROW_BOOST_MYPATH=/sandbox/someArrowStuff/ 3p/boost/
where /sandbox/someArrowStuff/ 3p/boost/ already holds the necessary boost source folder and ARROW_BOOST_MYPATH is somekind of variable to help locate the necessary source folder.

Is there some option like that? Where can I dig for more information regarding that?

Thanks,
Tahsin






Re: Building Arrow 0.15.1 using dependencies in local source folder

Posted by Wes McKinney <we...@gmail.com>.
I agree that the *_ROOT variables should be the way. If you find one
that does not work, please open a JIRA issue.

I don't think this is documented well enough in

http://arrow.apache.org/docs/developers/cpp.html#build-dependency-management

so I'm opening an issue

https://issues.apache.org/jira/browse/ARROW-7221

On Thu, Nov 14, 2019 at 2:49 PM Neal Richardson
<ne...@gmail.com> wrote:
>
> I am not an expert on this, but it seems you can specify `*_ROOT` arguments
> to cmake, like
> https://github.com/apache/arrow/blob/master/ci/PKGBUILD#L90-L91
>
> Maybe that does what you need?
>
> Neal
>
>
> On Thu, Nov 14, 2019 at 12:45 PM Tahsin Hassan <th...@mathworks.com>
> wrote:
>
> > Hi all,
> >
> > I am trying to build out arrow 0.15.1. The dependencies for arrow, e.g.
> > thrift, double-conversion are in a local source folder and we need to build
> > the dependencies from that location.
> >
> > I read up on
> >
> > https://github.com/apache/arrow/blob/master/docs/source/developers/cpp.rst#offline-builds
> >
> >   *   BUNDLED: Building the dependency automatically from source
> >   *   SYSTEM: Finding the dependency in system paths using CMake's
> > built-in find_package function, or using pkg-config for packages that do
> > not have this feature
> > Unfortunately, that’s not exactly what I want.
> > and
> >
> > https://github.com/apache/arrow/blob/master/docs/source/developers/cpp.rst#offline-builds
> > but, that basically downloads the tar(s) into a folder extracts them and
> > sets up build using that.
> > e.g.
> > $./download_dependencies.sh /sandbox/someArrowStuff/
> > # Environment variables for offline Arrow build
> > export ARROW_AWSSDK_URL=/sandbox/someArrowStuff/aws-sdk-cpp-1.7.160.tar.gz
> > export ARROW_BOOST_URL=/sandbox/someArrowStuff/boost-1.67.0.tar.gz
> > export ARROW_BROTLI_URL=/sandbox/someArrowStuff/brotli-v1.0.7.tar.gz
> > …
> >
> >
> > What I kind of wanted was , the set of environment variables that can
> > allow to set a source folder path
> > export ARROW_BOOST_MYPATH=/sandbox/someArrowStuff/ 3p/boost/
> > where /sandbox/someArrowStuff/ 3p/boost/ already holds the necessary boost
> > source folder and ARROW_BOOST_MYPATH is somekind of variable to help locate
> > the necessary source folder.
> >
> > Is there some option like that? Where can I dig for more information
> > regarding that?
> >
> > Thanks,
> > Tahsin
> >
> >
> >
> >
> >
> >

Re: Building Arrow 0.15.1 using dependencies in local source folder

Posted by Neal Richardson <ne...@gmail.com>.
I am not an expert on this, but it seems you can specify `*_ROOT` arguments
to cmake, like
https://github.com/apache/arrow/blob/master/ci/PKGBUILD#L90-L91

Maybe that does what you need?

Neal


On Thu, Nov 14, 2019 at 12:45 PM Tahsin Hassan <th...@mathworks.com>
wrote:

> Hi all,
>
> I am trying to build out arrow 0.15.1. The dependencies for arrow, e.g.
> thrift, double-conversion are in a local source folder and we need to build
> the dependencies from that location.
>
> I read up on
>
> https://github.com/apache/arrow/blob/master/docs/source/developers/cpp.rst#offline-builds
>
>   *   BUNDLED: Building the dependency automatically from source
>   *   SYSTEM: Finding the dependency in system paths using CMake's
> built-in find_package function, or using pkg-config for packages that do
> not have this feature
> Unfortunately, that’s not exactly what I want.
> and
>
> https://github.com/apache/arrow/blob/master/docs/source/developers/cpp.rst#offline-builds
> but, that basically downloads the tar(s) into a folder extracts them and
> sets up build using that.
> e.g.
> $./download_dependencies.sh /sandbox/someArrowStuff/
> # Environment variables for offline Arrow build
> export ARROW_AWSSDK_URL=/sandbox/someArrowStuff/aws-sdk-cpp-1.7.160.tar.gz
> export ARROW_BOOST_URL=/sandbox/someArrowStuff/boost-1.67.0.tar.gz
> export ARROW_BROTLI_URL=/sandbox/someArrowStuff/brotli-v1.0.7.tar.gz
> …
>
>
> What I kind of wanted was , the set of environment variables that can
> allow to set a source folder path
> export ARROW_BOOST_MYPATH=/sandbox/someArrowStuff/ 3p/boost/
> where /sandbox/someArrowStuff/ 3p/boost/ already holds the necessary boost
> source folder and ARROW_BOOST_MYPATH is somekind of variable to help locate
> the necessary source folder.
>
> Is there some option like that? Where can I dig for more information
> regarding that?
>
> Thanks,
> Tahsin
>
>
>
>
>
>