由于 NanoPC T4 为arm64所以,HPSocket 提供的编译安装脚本不能使用,只能自己写cmake ,大致如下
# For more information about using CMake with Android Studio, read the
# documentation: https://d.android.com/studio/projects/add-native-code.html
# Sets the minimum version of CMake required to build the native library.
cmake_minimum_required(VERSION 3.4.1)
# Creates and names a library, sets it as either STATIC
# or SHARED, and provides the relative paths to its source code.
# You can define multiple libraries, and CMake builds them for you.
# Gradle automatically packages shared libraries with your APK.
set(HSRC hpsocket/src)
set(COMMON ${HSRC}/common)
include_directories(
${COMMON}
${HSRC})
set(HP_SRC
${COMMON}/BufferPool.cpp
${COMMON}/crypto/Crypto.cpp
${COMMON}/Event.cpp
${COMMON}/FileHelper.cpp
${COMMON}/FuncHelper.cpp
${COMMON}/http/http_parser.c
${COMMON}/IODispatcher.cpp
${COMMON}/kcp/ikcp.c
${COMMON}/PollHelper.cpp
${COMMON}/RWLock.cpp
${COMMON}/SysHelper.cpp
${COMMON}/Thread.cpp
${HSRC}/ArqHelper.cpp
${HSRC}/HPThreadPool.cpp
${HSRC}/MiscHelper.cpp
${HSRC}/SocketHelper.cpp
${HSRC}/TcpAgent.cpp
${HSRC}/TcpClient.cpp
${HSRC}/TcpPackAgent.cpp
${HSRC}/TcpPackClient.cpp
${HSRC}/TcpPackServer.cpp
${HSRC}/TcpPullAgent.cpp
${HSRC}/TcpPullClient.cpp
${HSRC}/TcpPullServer.cpp
${HSRC}/TcpServer.cpp
${HSRC}/HPSocket.cpp
)
add_compile_options(-D_UDP_DISABLED -D_HTTP_DISABLED -D_ZLIB_DISABLED -D_SSL_DISABLED -D_ICONV_DISABLED)
add_library( # Sets the name of the library.
HPSocket
# Sets the library as a shared library.
${HP_SRC})
编译完成后,手动复制include和lib 到 /usr/local/ 对应的目录。
然后执行命令
sudo ldconfig
其实,cmake脚本,基本上能在大多数,arm平台上编译。