[
https://issues.apache.org/jira/browse/ARROW-4930?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16938066#comment-16938066
]
Sutou Kouhei commented on ARROW-4930:
-------------------------------------
{{CMAKE_INSTALL_LIBDIR}} works on Fedora, CentOS and so on but may not work on
Debian, Ubuntu and so on. (This is depends on {{CMAKE_INSTALL_PREFIX}}.)
Using {{PATH_SUFFIXES}} option of {{find_library}} with our
{{LIB_PATH_SUFFIXES}} is better.
https://cmake.org/cmake/help/latest/command/find_library.html
We already do this in {{FindArrow.cmake}} but don't do this in
{{FindParquet.cmake}} yet.
{{FindArrow.cmake}} uses wrong {{ARROW_SEARCH_LIB_PATH}}:
{noformat}
diff --git a/cpp/cmake_modules/FindArrow.cmake
b/cpp/cmake_modules/FindArrow.cmake
index b160506c4..58cf438e3 100644
--- a/cpp/cmake_modules/FindArrow.cmake
+++ b/cpp/cmake_modules/FindArrow.cmake
@@ -52,7 +52,7 @@ if("$ENV{ARROW_HOME}" STREQUAL "")
else()
set(ARROW_HOME "$ENV{ARROW_HOME}")
set(ARROW_SEARCH_HEADER_PATHS ${ARROW_HOME}/include)
- set(ARROW_SEARCH_LIB_PATH ${ARROW_HOME}/lib)
+ set(ARROW_SEARCH_LIB_PATH ${ARROW_HOME})
find_path(ARROW_INCLUDE_DIR arrow/array.h
PATHS ${ARROW_SEARCH_HEADER_PATHS}
{noformat}
But we need to fix more code in {{FindArrow.cmake}}.
Anyway, could you create a pull request to discuss right fix with code?
Or should I take over this?
> [Python] Remove LIBDIR assumptions in Python build
> --------------------------------------------------
>
> Key: ARROW-4930
> URL: https://issues.apache.org/jira/browse/ARROW-4930
> Project: Apache Arrow
> Issue Type: Improvement
> Components: Python
> Affects Versions: 0.12.1
> Reporter: Suvayu Ali
> Priority: Minor
> Labels: setup.py
> Fix For: 2.0.0
>
> Attachments: FindArrow.cmake.patch, FindParquet.cmake.patch
>
>
> This is in reference to (4) in
> [this|http://mail-archives.apache.org/mod_mbox/arrow-dev/201903.mbox/%3C0AF328A1-ED2A-457F-B72D-3B49C8614850%40xhochy.com%3E]
> mailing list discussion.
> Certain sections of setup.py assume a specific location of the C++ libraries.
> Removing this hard assumption will simplify PyArrow builds significantly. As
> far as I could tell these assumptions are made in the
> {{build_ext._run_cmake()}} method (wherever bundling of C++ libraries are
> handled).
> # The first occurrence is before invoking cmake (see line 237).
> # The second occurrence is when the C++ libraries are moved from their build
> directory to the Python tree (see line 347). The actual implementation is in
> the function {{_move_shared_libs_unix(..)}} (see line 468).
> Hope this helps.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)