[ https://issues.apache.org/jira/browse/ARROW-9541?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Kouhei Sutou resolved ARROW-9541. --------------------------------- Fix Version/s: 2.0.0 Resolution: Fixed Issue resolved by pull request 7818 [https://github.com/apache/arrow/pull/7818] > [C++] CMakeLists requires UTF8PROC_STATIC when building static library > ---------------------------------------------------------------------- > > Key: ARROW-9541 > URL: https://issues.apache.org/jira/browse/ARROW-9541 > Project: Apache Arrow > Issue Type: Bug > Components: C++ > Affects Versions: 1.0.0 > Reporter: Tanguy Fautre > Assignee: Tanguy Fautre > Priority: Major > Labels: pull-request-available > Fix For: 2.0.0 > > Time Spent: 2h 20m > Remaining Estimate: 0h > > Arrow does not correctly link with utf8proc if UTF8PROC_STATIC is not > specified when creating a static library, the library will contain unresolved > symbols to a DLL import library. > AFAIK this only happens on Windows (Visual Studio) but in theory the flag > should probably be specified for all platform. I suspect that in practice > only MSVC is impacted. There is already an existing section in > `CMakeLists.txt` covering this problem for Arrow itself. > See [https://github.com/microsoft/vcpkg/pull/12537/files] for an example > patch. In particular (line 149 of CMakeLists.txt): > {code} > if(ARROW_BUILD_STATIC AND WIN32) > target_compile_definitions(arrow_static PUBLIC ARROW_STATIC) > + if(ARROW_WITH_UTF8PROC) > + target_compile_definitions(arrow_static PUBLIC UTF8PROC_STATIC) > + endif() > endif() > {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)