Skip to content

Conversation

@JackBoosY
Copy link

arrow is available as a port in vcpkg, a C++ library manager that simplifies installation for arrow and other project dependencies. Documenting the install process here will help users get started by providing a single set of commands to build arrow, ready to be included in their projects.

We also test whether our library ports build in various configurations (dynamic, static) on various platforms (OSX, Linux, Windows: x86, x64, UWP, ARM) to keep a wide coverage for users.

I'm a maintainer for vcpkg, and here is what the port script looks like. We try to keep the library maintained as close as possible to the original library.

@JackBoosY JackBoosY marked this pull request as ready for review January 22, 2020 06:37
@github-actions
Copy link

Thanks for opening a pull request!

Could you open an issue for this pull request on JIRA?
https://issues.apache.org/jira/browse/ARROW

Then could you also rename pull request title in the following format?

ARROW-${JIRA_ID}: [${COMPONENT}] ${SUMMARY}

See also:

@JackBoosY JackBoosY changed the title Add vcpkg installation instructions ARROW-7644: [Documentation]Add vcpkg installation instructions Jan 22, 2020
@JackBoosY JackBoosY changed the title ARROW-7644: [Documentation]Add vcpkg installation instructions ARROW-7644: [Doc]Add vcpkg installation instructions Jan 22, 2020
@github-actions
Copy link

@JackBoosY JackBoosY changed the title ARROW-7644: [Doc]Add vcpkg installation instructions ARROW-7644: [Doc][Install] Add vcpkg installation instructions Jan 22, 2020

.. _building-vcpkg:

Building with Vcpkg
Copy link
Member

@kou kou Jan 22, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It seems that this description describes how to install Apache Arrow C++ with vcpkg instead of describing how tobuild with vcpkg.
How about adding this to https://github.com/apache/arrow-site/blob/master/install.md ? The file is published as https://arrow.apache.org/install/ .

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good suggestion, I will move it to that doc.

@kou
Copy link
Member

kou commented Jan 22, 2020

BTW, are you interested in adding Apache Arrow GLib package to vcpkg too?
To support Apache Arrow GLib, we need to do the followings:

  1. Update https://github.com/microsoft/vcpkg/blob/master/ports/glib/ to build with Meson instead of CMake. It will need improving vcpkg's Meson support. It will also need improving https://github.com/microsoft/vcpkg/tree/master/ports/gettext and https://github.com/microsoft/vcpkg/tree/master/ports/libiconv . (We may need to removing unofficial- prefix from their *-config.cmake.)
  2. Add GObject Introspection package to vcpkg. It also uses Meson as build system.
  3. Add Apache Arrow GLib package to vcpkg. It also uses Meson as build system.

@JackBoosY
Copy link
Author

@kou According to our documentation, we tend to use cmake to build ports, because the port dependencies in vcpkg are mostly guaranteed by cmake.

@kou
Copy link
Member

kou commented Jan 22, 2020

vcpkg has Meson support: https://github.com/microsoft/vcpkg/blob/master/scripts/cmake/vcpkg_install_meson.cmake
There are packages that uses Meson as build system such as https://github.com/microsoft/vcpkg/blob/master/ports/fribidi/portfile.cmake .
Can we use this approach for Apache Arrow GLib?

@JackBoosY
Copy link
Author

@kou Yes, we can try to use Meson, but because there are many libraries based on these ports, we need to deal with the correlation issues.

@kou
Copy link
Member

kou commented Jan 22, 2020

Great!

we need to deal with the correlation issues.

I think so too.

I did one of them: microsoft/vcpkg#8162
But I don't others yet because of lack of my resource.

Could you help us for it?

@JackBoosY
Copy link
Author

@kou Maybe you can submit a PR as the beginning and let us handle it :)
For now, I'm fixing issues with vtk and opencv3, so I don't have much time to deal with it.

@kou
Copy link
Member

kou commented Jan 22, 2020

OK!

@JackBoosY
Copy link
Author

I've create a PR #42 in arrow-site.

@JackBoosY JackBoosY closed this Jan 22, 2020
@JackBoosY JackBoosY deleted the vcpkg-instructions branch January 22, 2020 08:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants