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

[C++] Do not transitively depend on libboost_system

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 0.7.0
    • Fix Version/s: 0.8.0
    • Component/s: C++

      Description

      We picked up this dependency recently. I don't think this is a blocker for 0.7.0, but it impacts static linkers (e.g. linkers of parquet-cpp)

      This was introduced in ARROW-1339 https://github.com/apache/arrow/commit/94b7cfafae0bda8f68ee3e5e9702c954b0116203

      cc Deepak Majeti

        Issue Links

          Activity

          Hide
          wesmckinn Wes McKinney added a comment -

          Deepak Majeti I took a quick look at this. boost::system symbols are getting pulled in as a transitive dependency to boost::filesystem. We need boost::filesystem for handling unicode file paths on Windows. Trying to conditionally use boost::filesystem only on Windows would be a lot of work without a great deal of benefit.

          One solution to this problem would be to add an option to vendor the requisite Boost bits in parquet-cpp, like we've done in Arrow

          https://github.com/apache/arrow/blob/master/cpp/CMakeLists.txt#L129

          https://github.com/apache/arrow/blob/master/cpp/cmake_modules/ThirdpartyToolchain.cmake#L139

          Show
          wesmckinn Wes McKinney added a comment - Deepak Majeti I took a quick look at this. boost::system symbols are getting pulled in as a transitive dependency to boost::filesystem . We need boost::filesystem for handling unicode file paths on Windows. Trying to conditionally use boost::filesystem only on Windows would be a lot of work without a great deal of benefit. One solution to this problem would be to add an option to vendor the requisite Boost bits in parquet-cpp, like we've done in Arrow https://github.com/apache/arrow/blob/master/cpp/CMakeLists.txt#L129 https://github.com/apache/arrow/blob/master/cpp/cmake_modules/ThirdpartyToolchain.cmake#L139
          Hide
          githubbot ASF GitHub Bot added a comment -

          GitHub user majetideepak opened a pull request:

          https://github.com/apache/arrow/pull/1105

          ARROW-1536:[C++] Do not transitively depend on libboost_system

          You can merge this pull request into a Git repository by running:

          $ git pull https://github.com/majetideepak/arrow ARROW-1536

          Alternatively you can review and apply these changes as the patch at:

          https://github.com/apache/arrow/pull/1105.patch

          To close this pull request, make a commit to your master/trunk branch
          with (at least) the following in the commit message:

          This closes #1105


          commit 73eeb63a5426e47e7321d245c8059a3c341f983c
          Author: Deepak Majeti <deepak.majeti@hpe.com>
          Date: 2017-09-17T02:51:06Z

          ARROW-1536:[C++] Do not transitively depend on libboost_system


          Show
          githubbot ASF GitHub Bot added a comment - GitHub user majetideepak opened a pull request: https://github.com/apache/arrow/pull/1105 ARROW-1536 : [C++] Do not transitively depend on libboost_system You can merge this pull request into a Git repository by running: $ git pull https://github.com/majetideepak/arrow ARROW-1536 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/arrow/pull/1105.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #1105 commit 73eeb63a5426e47e7321d245c8059a3c341f983c Author: Deepak Majeti <deepak.majeti@hpe.com> Date: 2017-09-17T02:51:06Z ARROW-1536 : [C++] Do not transitively depend on libboost_system
          Hide
          mdeepak Deepak Majeti added a comment -

          Wes McKinney I made an attempt here https://github.com/apache/arrow/pull/1105. Please let me know what you think. Thanks!

          Show
          mdeepak Deepak Majeti added a comment - Wes McKinney I made an attempt here https://github.com/apache/arrow/pull/1105 . Please let me know what you think. Thanks!
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user wesm commented on the issue:

          https://github.com/apache/arrow/pull/1105

          Can you also rebase? thanks

          Show
          githubbot ASF GitHub Bot added a comment - Github user wesm commented on the issue: https://github.com/apache/arrow/pull/1105 Can you also rebase? thanks
          Hide
          wesmckinn Wes McKinney added a comment -

          Issue resolved by pull request 1105
          https://github.com/apache/arrow/pull/1105

          Show
          wesmckinn Wes McKinney added a comment - Issue resolved by pull request 1105 https://github.com/apache/arrow/pull/1105
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user asfgit closed the pull request at:

          https://github.com/apache/arrow/pull/1105

          Show
          githubbot ASF GitHub Bot added a comment - Github user asfgit closed the pull request at: https://github.com/apache/arrow/pull/1105

            People

            • Assignee:
              mdeepak Deepak Majeti
              Reporter:
              wesmckinn Wes McKinney
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development