netty-transport-native-epoll-4.1.25.Final-linux-aarch_64.jar编译指南

2024-03-18 03:08

本文主要是介绍netty-transport-native-epoll-4.1.25.Final-linux-aarch_64.jar编译指南,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

  1. 背景介绍:

    ​ 在编译netty-transport-native-epoll-4.1.25.Final-linux-aarch_64.jar的时候,论坛上看到很多指导,步骤都不太一样。验证了几个指导,都没法成功编译。

  2. 依赖:

    在编译netty-transport-native-epoll-4.1.25.Final之前,必须编译netty-tcnative-2.0.8.Final。

    注:不同的netty-transport-native-epoll版本,对应不同的netty-tcnative版本。如果不清晰依赖的版本,可以先编译netty-transport-native-epoll,报错提示将会把版本信息打印出来。

  3. 编译netty-tcnative-2.0.8.Final

    1. 安装依赖

      yum install java-1.8.0* git gcc gcc-c++ make cmake3 libtool autoconf automake openssl-devel ninja-build golang apr-devel -y
      
    2. CMake 3和ninja-build设置软连接

      ln -s /usr/bin/cmake3 /usr/bin/cmake
      ln -s /usr/bin/ninja-build /usr/bin/ninja
      

      如果yum源里边没有cmake3和ninja-build,可以源码编译安装。

    3. 编译netty需要使用maven

      #下载
      wget https://archive.apache.org/dist/maven/maven-3/3.5.4/binaries/apache-maven-3.5.4-bin.tar.gz
      #解压
      tar zxvf apache-maven-3.5.4-bin.tar.gz -C /usr/local#配置环境变量
      export PATH=/usr/local/apache-maven-3.5.4/bin:$PATH
      
    4. 编译安装

      #下载
      wget https://github.com/netty/netty-tcnative/archive/netty-tcnative-parent-2.0.8.Final.tar.gz
      #进入目录
      cd netty-tcnative-netty-tcnative-parent-2.0.8.Final/
      

      修改pom.xml文件,屏蔽456行和474行代码

      image.png

      编译安装:

      mvn clean install
      
    5. 查看

      安装完成之后,将在maven本地仓库里边查看的。

      image.png

  1. 编译netty-transport-native-epoll

    1. 下载编译

      wget https://github.com/netty/netty/archive/netty-4.1.25.Final.zip
      unzip netty-4.1.25.Final.zip
      cd netty-netty-4.1.25.Final#编译,整个过程将拉取依赖jar包,比较慢
      ./mvnw clean install -pl transport-native-unix-common -DskipTests=true
      ./mvnw clean install -pl transport-native-epoll -DskipTests=true
      
    2. 查看编译结果

      image.png

这篇关于netty-transport-native-epoll-4.1.25.Final-linux-aarch_64.jar编译指南的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/821001

相关文章

linux-基础知识3

打包和压缩 zip 安装zip软件包 yum -y install zip unzip 压缩打包命令: zip -q -r -d -u 压缩包文件名 目录和文件名列表 -q:不显示命令执行过程-r:递归处理,打包各级子目录和文件-u:把文件增加/替换到压缩包中-d:从压缩包中删除指定的文件 解压:unzip 压缩包名 打包文件 把压缩包从服务器下载到本地 把压缩包上传到服务器(zip

Linux 网络编程 --- 应用层

一、自定义协议和序列化反序列化 代码: 序列化反序列化实现网络版本计算器 二、HTTP协议 1、谈两个简单的预备知识 https://www.baidu.com/ --- 域名 --- 域名解析 --- IP地址 http的端口号为80端口,https的端口号为443 url为统一资源定位符。CSDNhttps://mp.csdn.net/mp_blog/creation/editor

【Python编程】Linux创建虚拟环境并配置与notebook相连接

1.创建 使用 venv 创建虚拟环境。例如,在当前目录下创建一个名为 myenv 的虚拟环境: python3 -m venv myenv 2.激活 激活虚拟环境使其成为当前终端会话的活动环境。运行: source myenv/bin/activate 3.与notebook连接 在虚拟环境中,使用 pip 安装 Jupyter 和 ipykernel: pip instal

Retrieval-based-Voice-Conversion-WebUI模型构建指南

一、模型介绍 Retrieval-based-Voice-Conversion-WebUI(简称 RVC)模型是一个基于 VITS(Variational Inference with adversarial learning for end-to-end Text-to-Speech)的简单易用的语音转换框架。 具有以下特点 简单易用:RVC 模型通过简单易用的网页界面,使得用户无需深入了

Java 创建图形用户界面(GUI)入门指南(Swing库 JFrame 类)概述

概述 基本概念 Java Swing 的架构 Java Swing 是一个为 Java 设计的 GUI 工具包,是 JAVA 基础类的一部分,基于 Java AWT 构建,提供了一系列轻量级、可定制的图形用户界面(GUI)组件。 与 AWT 相比,Swing 提供了许多比 AWT 更好的屏幕显示元素,更加灵活和可定制,具有更好的跨平台性能。 组件和容器 Java Swing 提供了许多

Linux_kernel驱动开发11

一、改回nfs方式挂载根文件系统         在产品将要上线之前,需要制作不同类型格式的根文件系统         在产品研发阶段,我们还是需要使用nfs的方式挂载根文件系统         优点:可以直接在上位机中修改文件系统内容,延长EMMC的寿命         【1】重启上位机nfs服务         sudo service nfs-kernel-server resta

native和static native区别

本文基于Hello JNI  如有疑惑,请看之前几篇文章。 native 与 static native java中 public native String helloJni();public native static String helloJniStatic();1212 JNI中 JNIEXPORT jstring JNICALL Java_com_test_g

【Linux 从基础到进阶】Ansible自动化运维工具使用

Ansible自动化运维工具使用 Ansible 是一款开源的自动化运维工具,采用无代理架构(agentless),基于 SSH 连接进行管理,具有简单易用、灵活强大、可扩展性高等特点。它广泛用于服务器管理、应用部署、配置管理等任务。本文将介绍 Ansible 的安装、基本使用方法及一些实际运维场景中的应用,旨在帮助运维人员快速上手并熟练运用 Ansible。 1. Ansible的核心概念

基于UE5和ROS2的激光雷达+深度RGBD相机小车的仿真指南(五):Blender锥桶建模

前言 本系列教程旨在使用UE5配置一个具备激光雷达+深度摄像机的仿真小车,并使用通过跨平台的方式进行ROS2和UE5仿真的通讯,达到小车自主导航的目的。本教程默认有ROS2导航及其gazebo仿真相关方面基础,Nav2相关的学习教程可以参考本人的其他博客Nav2代价地图实现和原理–Nav2源码解读之CostMap2D(上)-CSDN博客往期教程: 第一期:基于UE5和ROS2的激光雷达+深度RG