Uploaded image for project: 'Apache Arrow'
  1. Apache Arrow
  2. ARROW-8248

[C++] vcpkg build clobbers arrow.lib from shared (.dll) with static (.lib)

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Not A Problem
    • 0.16.0
    • None
    • C++, Developer Tools
    • None

    Description

      After installing Arrow via vcpkg, build the library per the steps below. CMake builds the shared arrow library (.dll) and then the static arrow library (.lib). It overwrites the shared arrow.lib (exports) with the static arrow.lib. This results in multiple link/execution problems when using the vc projects to build the example projects until you realize that shared arrow needs to be rebuilt. (This took me two days.) 

      Also, many of the projects added with the extra -D flags (beyond ARROW_BUILD_TESTS) don't build.

      ***

      "C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\Tools\VsDevCmd.bat" -arch=amd64

      cd F:\Dev\vcpkg\buildtrees\arrow\src\row-0.16.0-872c330822\cpp

      mkdir build

      cd build

      cmake .. -G "Visual Studio 15 2017 Win64" -DARROW_BUILD_TESTS=ON -DARROW_BUILD_EXAMPLES=ON -DARROW_PARQUET=ON -DARROW_PYTHON=ON -DCMAKE_BUILD_TYPE=Debug

      cmake --build . --config Debug

      Attachments

        Activity

          People

            Unassigned Unassigned
            swilson314 Scott Wilson
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: