[
https://issues.apache.org/jira/browse/HDFS-14394?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16803938#comment-16803938
]
Wei-Chiu Chuang commented on HDFS-14394:
----------------------------------------
We do mention gcc version supported in BUILD.txt
{quote}
One of the compilers that support thread_local storage: GCC 4.8.1 or later,
Visual Studio,
Clang (community version), Clang (version for iOS 9 and later) (if compiling
native code)
{quote}
c99 is supported in gcc since at least gcc 3.2.0, so enforcing c99 doesn't
break compat. I couldn't find the minimum version of Clang that supports c99,
but I guess it's reasonable to assume Clang supports c99 since inception, since
Clang was first released in 2007.
> Add -std=c99 / -std=gnu99 to libhdfs compile flags
> --------------------------------------------------
>
> Key: HDFS-14394
> URL: https://issues.apache.org/jira/browse/HDFS-14394
> Project: Hadoop HDFS
> Issue Type: Task
> Components: hdfs-client, libhdfs, native
> Reporter: Sahil Takiar
> Assignee: Sahil Takiar
> Priority: Major
>
> libhdfs compilation currently does not enforce a minimum required C version.
> As of today, the libhdfs build on Hadoop QA works, but when built on a
> machine with an outdated gcc / cc version where C89 is the default,
> compilation fails due to errors such as:
> {code}
> /build/hadoop/hadoop-hdfs-project/hadoop-hdfs-native-client/src/main/native/libhdfs/jclasses.c:106:5:
> error: ‘for’ loop initial declarations are only allowed in C99 mode
> for (int i = 0; i < numCachedClasses; i++) {
> ^
> /build/hadoop/hadoop-hdfs-project/hadoop-hdfs-native-client/src/main/native/libhdfs/jclasses.c:106:5:
> note: use option -std=c99 or -std=gnu99 to compile your code
> {code}
> We should add the -std=c99 / -std=gnu99 flags to libhdfs compilation so that
> we can enforce C99 as the minimum required version.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]