[
https://issues.apache.org/jira/browse/ARROW-4844?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16791069#comment-16791069
]
Jeroen edited comment on ARROW-4844 at 3/12/19 10:42 PM:
---------------------------------------------------------
OK thank you. FWIW: I was able to make the R bindings work by building an
external libdouble-conversion, and then rebuilding libarrow using this external
library by setting -DDOUBLE_CONVERSION_HOME. By avoiding the vendored library,
I can now statically link against libarrow by also including
`-ldouble-conversion`. So I have a workaround.
Still, I do think that when arrow does get built with vendored libs, those
should be shipped one way or another. Otherwise there is no way to link with
the resulting libarrow library.
was (Author: jeroenooms):
OK thank you. FWIW: I was able to make the R bindings work by building an
external libdouble-conversion, and then rebuilding libarrow using this external
library by setting -DDOUBLE_CONVERSION_HOME. By avoiding the vendored library,
I can now statically link against libarrow by also including
`-ldouble-conversion`.
Still, I do think that when arrow does get built with vendored libs, those
should be shipped one way or another. Otherwise there is no way to link with
the resulting libarrow library.
> Static libarrow is missing vendored libdouble-conversion
> --------------------------------------------------------
>
> Key: ARROW-4844
> URL: https://issues.apache.org/jira/browse/ARROW-4844
> Project: Apache Arrow
> Issue Type: Bug
> Components: C++
> Affects Versions: 0.12.1
> Reporter: Jeroen
> Assignee: Uwe L. Korn
> Priority: Major
>
> When trying to statically link the R bindings to libarrow.a, I get linking
> errors which suggest that libdouble-conversion.a was not properly embedded in
> libarrow.a. This problem happens on both MacOS and Windows.
> Here is the arrow build log:
> https://ci.appveyor.com/project/jeroen/rtools-packages/builds/23015303/job/mtgl6rvfde502iu7
> {code}
> C:/rtools40/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.3.0/../../../../x86_64-w64-mingw32/bin/ld.exe:
>
> C:/rtools40/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.3.0/../../../../lib/libarrow.a(cast.cc.obj):(.text+0x1c77c):
> undefined reference to
> `double_conversion::StringToDoubleConverter::StringToDouble(char const*, int,
> int*) const'
> C:/rtools40/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.3.0/../../../../x86_64-w64-mingw32/bin/ld.exe:
>
> C:/rtools40/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.3.0/../../../../lib/libarrow.a(converter.cc.obj):(.text+0x5fda):
> undefined reference to
> `double_conversion::StringToDoubleConverter::StringToDouble(char const*, int,
> int*) const'
> C:/rtools40/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.3.0/../../../../x86_64-w64-mingw32/bin/ld.exe:
>
> C:/rtools40/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.3.0/../../../../lib/libarrow.a(converter.cc.obj):(.text+0x6097):
> undefined reference to
> `double_conversion::StringToDoubleConverter::StringToDouble(char const*, int,
> int*) const'
> C:/rtools40/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.3.0/../../../../x86_64-w64-mingw32/bin/ld.exe:
>
> C:/rtools40/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.3.0/../../../../lib/libarrow.a(converter.cc.obj):(.text+0x6589):
> undefined reference to
> `double_conversion::StringToDoubleConverter::StringToFloat(char const*, int,
> int*) const'
> C:/rtools40/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.3.0/../../../../x86_64-w64-mingw32/bin/ld.exe:
>
> C:/rtools40/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.3.0/../../../../lib/libarrow.a(converter.cc.obj):(.text+0x6647):
> undefined reference to
> `double_conversion::StringToDoubleConverter::StringToFloat(char const*, int,
> int*) const'
> {code}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)