hadoop-hdfs-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sahil Takiar (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HDFS-14394) Add -std=c99 / -std=gnu99 to libhdfs compile flags
Date Mon, 01 Apr 2019 23:25:00 GMT

    [ https://issues.apache.org/jira/browse/HDFS-14394?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16807272#comment-16807272

Sahil Takiar commented on HDFS-14394:

[~eyang] what was the compilation error that you hit? I double checked and I'm able to compile
the patch locally.

Is there a specific reason we don't want the {{-std=c99}} flag in libhdfs++? Would moving
the C_FLAGS setting to {{src/main/native/libhdfs/CMakeLists.txt}} fix this?

I'm not sure what the policy is on using {{-std=c99}} or {{-std=gnu99}}, although we were
already using {{gnu99}} for Solaris builds. I don't think there is a specific reason we need
{{gnu99}} over {{c99}} though.

> 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
>         Attachments: HDFS-14394.001.patch
> 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

To unsubscribe, e-mail: hdfs-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: hdfs-issues-help@hadoop.apache.org

View raw message