HADOOP-16739. Fix native build failure of hadoop-pipes on CentOS 8.
This commit is contained in:
parent
7b036c512f
commit
83c4f8b9a0
41
BUILDING.txt
41
BUILDING.txt
|
@ -422,6 +422,47 @@ Building command example:
|
||||||
Note that the command above manually specified the openssl library and include
|
Note that the command above manually specified the openssl library and include
|
||||||
path. This is necessary at least for Homebrewed OpenSSL.
|
path. This is necessary at least for Homebrewed OpenSSL.
|
||||||
|
|
||||||
|
|
||||||
|
----------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
Building on CentOS 8
|
||||||
|
|
||||||
|
----------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
* Install development tools such as GCC, autotools, OpenJDK and Maven.
|
||||||
|
$ sudo dnf group install 'Development Tools'
|
||||||
|
$ sudo dnf install java-1.8.0-openjdk-devel maven
|
||||||
|
|
||||||
|
* Install Protocol Buffers v2.5.0.
|
||||||
|
$ git clone https://github.com/protocolbuffers/protobuf
|
||||||
|
$ cd protobuf
|
||||||
|
$ git checkout v2.5.0
|
||||||
|
$ autoreconf -i
|
||||||
|
$ ./configure --prefix=/usr/local
|
||||||
|
$ make
|
||||||
|
$ sudo make install
|
||||||
|
$ cd ..
|
||||||
|
|
||||||
|
* Install libraries provided by CentOS 8.
|
||||||
|
$ sudo dnf install libtirpc-devel zlib-devel lz4-devel bzip2-devel openssl-devel cyrus-sasl-devel libpmem-devel
|
||||||
|
|
||||||
|
* Install optional dependencies (snappy-devel).
|
||||||
|
$ sudo dnf --enablerepo=PowerTools snappy-devel
|
||||||
|
|
||||||
|
* Install optional dependencies (libzstd-devel).
|
||||||
|
$ sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
|
||||||
|
$ sudo dnf --enablerepo=epel install libzstd-devel
|
||||||
|
|
||||||
|
* Install optional dependencies (isa-l).
|
||||||
|
$ sudo dnf --enablerepo=PowerTools install nasm
|
||||||
|
$ git clone https://github.com/intel/isa-l
|
||||||
|
$ cd isa-l/
|
||||||
|
$ ./autogen.sh
|
||||||
|
$ ./configure
|
||||||
|
$ make
|
||||||
|
$ sudo make install
|
||||||
|
|
||||||
----------------------------------------------------------------------------------
|
----------------------------------------------------------------------------------
|
||||||
|
|
||||||
Building on Windows
|
Building on Windows
|
||||||
|
|
|
@ -22,6 +22,25 @@ list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/../../../hadoop-common-project
|
||||||
include(HadoopCommon)
|
include(HadoopCommon)
|
||||||
|
|
||||||
find_package(OpenSSL REQUIRED)
|
find_package(OpenSSL REQUIRED)
|
||||||
|
find_package(PkgConfig QUIET)
|
||||||
|
pkg_check_modules(LIBTIRPC libtirpc)
|
||||||
|
|
||||||
|
find_path(RPC_INCLUDE_DIRS NAMES rpc/rpc.h)
|
||||||
|
|
||||||
|
if (NOT RPC_INCLUDE_DIRS)
|
||||||
|
find_path(TIRPC_INCLUDE_DIRS
|
||||||
|
NAMES netconfig.h
|
||||||
|
PATH_SUFFIXES tirpc
|
||||||
|
HINTS ${LIBTIRPC_INCLUDE_DIRS}
|
||||||
|
)
|
||||||
|
|
||||||
|
find_library(TIRPC_LIBRARIES
|
||||||
|
NAMES tirpc
|
||||||
|
HINTS ${LIBTIRPC_LIBRARY_DIRS}
|
||||||
|
)
|
||||||
|
|
||||||
|
include_directories(${TIRPC_INCLUDE_DIRS})
|
||||||
|
endif()
|
||||||
|
|
||||||
include_directories(
|
include_directories(
|
||||||
main/native/utils/api
|
main/native/utils/api
|
||||||
|
@ -51,6 +70,9 @@ add_library(hadooputils STATIC
|
||||||
main/native/utils/impl/StringUtils.cc
|
main/native/utils/impl/StringUtils.cc
|
||||||
main/native/utils/impl/SerialUtils.cc
|
main/native/utils/impl/SerialUtils.cc
|
||||||
)
|
)
|
||||||
|
if (NOT RPC_INCLUDE_DIRS AND LIBTIRPC_FOUND)
|
||||||
|
target_link_libraries(hadooputils tirpc)
|
||||||
|
endif()
|
||||||
|
|
||||||
add_library(hadooppipes STATIC
|
add_library(hadooppipes STATIC
|
||||||
main/native/pipes/impl/HadoopPipes.cc
|
main/native/pipes/impl/HadoopPipes.cc
|
||||||
|
|
Loading…
Reference in New Issue