hadoop-hdfs-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Anatoli Shein (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (HDFS-11971) libhdfs++: A few portability issues
Date Wed, 14 Jun 2017 19:16:02 GMT

     [ https://issues.apache.org/jira/browse/HDFS-11971?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Anatoli Shein updated HDFS-11971:
---------------------------------
    Attachment: HDFS-11971.HDFS-8707.001.patch

Thanks for the review [~James C]. I just moved the relocation of the files to a separate jira
(HDFS-11973) so that it will be easier to review.

In the new patch here (attached) I addressed all the portability issued mentioned in the jira
description and also the Protobuf linking problem mentioned in my previous comment. The problem
was that ${PROTOBUF_INCLUDE_DIRS} was missing from the cmake command 'include_directories',
and because of that I would get protobuf errors during the build of libhdfspp as a stand alone
library. Now all the linking errors should be resolved. Please review the new patch.

> libhdfs++: A few portability issues
> -----------------------------------
>
>                 Key: HDFS-11971
>                 URL: https://issues.apache.org/jira/browse/HDFS-11971
>             Project: Hadoop HDFS
>          Issue Type: Sub-task
>          Components: hdfs-client
>            Reporter: Anatoli Shein
>            Assignee: Anatoli Shein
>         Attachments: HDFS-11971.HDFS-8707.000.patch, HDFS-11971.HDFS-8707.001.patch
>
>
> I recently encountered a few portability issues with libhdfs++ while trying to build
it as a stand alone project (and also as part of another Apache project).
> 1. Method fixCase in configuration.h file produces a warning "conversion to ‘char’
from ‘int’ may alter its value [-Werror=conversion]" which does not allow libhdfs++ to
be compiled as part of the codebase that treats such warnings as errors (can be fixed with
a simple cast).
> 2. In CMakeLists.txt file (in libhdfspp directory) we do find_package(Threads) however
we do not link it to the targets (e.g. hdfspp_static), which causes the build to fail with
pthread errors. After the Threads package is found we need to link it using ${CMAKE_THREAD_LIBS_INIT}.
> 3. All the tools and examples fail to build as part of a standalone libhdfs++ because
they are missing multiple libraries such as protobuf, ssl, pthread, etc. This happens because
we link them to a shared library hdfspp instead of hdfspp_static library. We should either
link all the tools and examples to hdfspp_static library or explicitly add linking to all
missing libraries for each tool/example.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

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


Mime
View raw message