[
https://issues.apache.org/jira/browse/ARROW-1139?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16060029#comment-16060029
]
Philipp Moritz edited comment on ARROW-1139 at 6/22/17 10:10 PM:
-----------------------------------------------------------------
Hey Phillip,
For clang, I have a proposed fix here: https://github.com/apache/arrow/pull/769
Another option is to patch dlmalloc along the lines of
https://github.com/greg7mdp/dlmalloc/commits/master, let me know which one you
prefer!
As for the problem with g++ I haven't been able to reproduce it. I tried on
ubuntu-16.04 with g++-7.1.0 (I didn't find 7.1.1); can you let me know which
build environment you are using/how to reproduce it? Is there a way to install
g++-7.1.1 in ubuntu?
Thanks for finding this!
Best,
Philipp.
was (Author: pcmoritz):
Hey Phillip,
For clang, I have a proposed fix here: https://github.com/apache/arrow/pull/769
Another option is to patch dlmalloc along the lines of
https://github.com/greg7mdp/dlmalloc/commits/master, let me know which one you
prefer!
As for the problem with g++, I haven't been able to reproduce it. I tried on
ubuntu-16.04 with g++-7.1.0 (I didn't find 7.1.1); can you let me know which
build environment you are using/how to reproduce it? Is there a way to install
g++-7.1.1 in ubuntu?
Thanks for finding this!
Best,
Philipp.
> [C++] dlmalloc doesn't allow arrow to be built with clang 4 or gcc 7.1.1
> ------------------------------------------------------------------------
>
> Key: ARROW-1139
> URL: https://issues.apache.org/jira/browse/ARROW-1139
> Project: Apache Arrow
> Issue Type: Bug
> Components: C++
> Affects Versions: 0.4.1
> Reporter: Phillip Cloud
> Assignee: Philipp Moritz
>
> When building arrow with clang 4.0.0 I see the following error when building
> the plasma store:
> {code}
> In file included from
> /home/phillip/code/cpp/arrow/cpp/src/plasma/malloc.cc:45:
>
> /home/phillip/code/cpp/arrow/cpp/src/plasma/thirdparty/dlmalloc.c:592:5:
> error: macro expansion
>
> producing 'defined' has undefined behavior
> [-Werror,-Wexpansion-to-defined]
>
> #if USE_LOCKS /* Spin locks for gcc >= 4.1, older gcc on x86, MSC >= 1310 */
>
>
> ^
>
>
> /home/phillip/code/cpp/arrow/cpp/src/plasma/thirdparty/dlmalloc.c:588:22:
> note: expanded from
>
> macro 'USE_LOCKS'
>
>
> #define USE_LOCKS ((defined(USE_SPIN_LOCKS) && USE_SPIN_LOCKS != 0) || \
> {code}
> and this error when building with clang 4.0.0 and gcc 7.1.1:
> {code}
> In file included from
> /home/phillip/code/cpp/arrow/cpp/src/plasma/malloc.cc:45:0:
> /home/phillip/code/cpp/arrow/cpp/src/plasma/thirdparty/dlmalloc.c:648:0:
> error: "_GNU_SOURCE" redefined [-Werror]
> #define _GNU_SOURCE /* Turns on mremap() definition */
>
>
>
> <command-line>:0:0: note: this is the location of the previous definition
>
> cc1plus: all warnings being treated as errors
>
> make[2]: *** [src/plasma/CMakeFiles/plasma_objlib.dir/build.make:207:
> src/plasma/CMakeFiles/plasma_objlib.dir/malloc.cc.o] Error 1
> make[1]: *** [CMakeFiles/Makefile2:657:
> src/plasma/CMakeFiles/plasma_objlib.dir/all] Error 2
> make: *** [Makefile:141: all] Error 2
> {code}
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)