建议使用以下浏览器,以获得最佳体验。 IE 9.0+以上版本 Chrome 31+ 谷歌浏览器 Firefox 30+ 火狐浏览器
请选择 进入手机版 | 继续访问电脑版
设置昵称

在此一键设置昵称,即可参与社区互动!

确定
我再想想
选择版块
092947bevjlmiytnwwd8ky.jpg 鲲鹏应用创新大赛微话题 【鲲鹏知识挑战赛】参与挑战,赢取精彩好礼! 汇聚鲲鹏领域技术专家大咖
标签
您还可以添加5个标签
  • 没有搜索到和“关键字”相关的标签
  • 云产品
  • 解决方案
  • 技术领域
  • 通用技术
  • 平台功能
取消

五湖四海@银河护卫队

发帖: 106粉丝: 34

级别 : 版主

发消息 + 关注

发表于2020年02月12日 21:35:23 1369 1
直达本楼层的链接
楼主
显示全部楼层
[交流分享] lz4-java-1.2.0.jar移植指南 for 中标麒麟7.5【鲲鹏920(ARM64)】

1简介

LZ4是一种无损数据压缩算法,着重于压缩和解压的速度,并且应用广泛,在Hadoop、Linux内核、文件系统都有应用。

lz4是目前综合来看效率最高的压缩算法,更加侧重压缩解压速度,压缩比并不是第一。在当前的安卓和苹果操作系统中,内存压缩技术就使用的是lz4算法,及时压缩手机内存以带来更多的内存空间。本质上是时间换空间。

官方链接:https://github.com/lz4/lz4-java

类别:解压缩

2环境

类别

子项

版本

获取地址(方法)

 

硬件

CPU

Kunpeng 920

iBMC

网络

Ethernet-10GE

iBMC

存储

SATA 4T

iBMC

内存

xxG xxxMHz

iBMC

OS

NeoKylin

7.5

cat /etc/neokylin-release

Kernel

4.14.0

cat /proc/version

 

软件

GCC

4.8.5

参考下面安装说明

OpenJDK

 

1.8.0_191

参考下面安装说明

Lz4-java

1.2.0

参考下面安装说明

3依赖安装

3.1安装OpenJDK

下载并安装到指定目录(如/opt/tools/installed):

wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u191-b12/OpenJDK8U-jdk_aarch64_linux_hotspot_8u191b12.tar.gz

tar -zxf OpenJDK8U-jdk_aarch64_linux_hotspot_8u191b12.tar.gz

mv jdk8u191-b12   /opt/tools/installed/

配置java环境变量,在/etc/profile文件末尾处增加下面的代码:

JAVA_HOME=/opt/tools/installed/jdk8u191-b12

PATH=$JAVA_HOME/bin:$PATH

export JAVA_HOME PATH

运行下面命令,使修改的环境变量生效:

source /etc/profile

3.2安装GCC等依赖项

挂载OS镜像:

mount -o loop   /home/NeoKylin/nsV7Update5-adv-lic-build05-aarch64.iso /mnt/NeoKylin/

修改/etc/yum.repos.d/ns7-adv.repo文件,配置yum本地源:

[ns7-adv-os]

name=NeoKylin Linux Advanced Server 7 - Os

baseurl= file:///mnt/NeoKylin

gpgcheck=0

gpgkey=file:///mnt/NeoKylin/RPM-GPG-KEY-neokylin-release

enabled=1

        运行下面的命令,使yum源配置生效:

yum clean all

yum makecache

yum安装GCC等相关依赖:

sudo yum install -y snappy snappy-devel autoconf automake libtool   git gcc gcc-c++ make cmake openssl openssl-devel ncurses-devel zlib   zlib-devel bzip2 bzip2-devel bzip2-libs readline readline-devel bison zip   unzip tar

3.3安装ant编译软件

1下载ant开源软件包

wget   http://mirror.bit.edu.cn/apache//ant/binaries/apache-ant-1.9.14-bin.tar.gz

2、解压apache-ant-1.9.14-bin.tar.gz

tar zxvf apache-ant-1.9.14-bin.tar.gz

3、进入解压路径

cd apache-ant-1.9.14/

4、将ANT_HOME配置到/etc/profile环境变量中

vi /etc/proflile

ant-1.PNG

5、使ANT_HOME环境变量生效

source /etc/proflile

 3.5gccg++c++增加-fsigned-char选项

1、对gcc增加-fsigned-char选项

1)使用which gcc命令寻找gcc所在路径(一般位于/usr/bin/gcc)

which gcc

2)更改gcc的名字(比如改成gcc-arm

mv /usr/bin/gcc   /usr/bin/gcc-arm

3)、进入gcc所在目录执行vi gcc,并填入如下内容保存:

#! /bin/sh

/usr/bin/gcc-arm -fsigned-char "$@"

cd /usr/bin/

vi gcc

4)、执行chmod +x gcc给脚本添加执行权限

chmod +x gcc

2、对g++增加-fsigned-char选项

1)使用which g++命令寻找g++所在路径(一般位于/usr/bin/g++)

which g++

2)更改g++的名字(比如改成g++-arm

mv /usr/bin/g++   /usr/bin/g++-arm

3)、进入g++所在目录执行vi g++,并填入如下内容保存:

#! /bin/sh

/usr/bin/g++-arm -fsigned-char "$@"

cd /usr/bin/

vi g++

4)、执行chmod +x g++给脚本添加执行权限

chmod +x g++

3、对c++增加-fsigned-char选项

1)使用which c++命令寻找g++所在路径(一般位于/usr/bin/c++)

which c++

2)更改c++的名字(比如改成c++-arm

mv /usr/bin/c++   /usr/bin/c++-arm

3)、进入c++所在目录执行vi c++,并填入如下内容保存:

#! /bin/sh

/usr/bin/c++-arm -fsigned-char "$@"

cd /usr/bin/

vi c++

4)、执行chmod +x c++给脚本添加执行权限

chmod +x c++

 

4编译安装

1、从github网站下载源码并解压

wget https://github.com/lz4/lz4-java/archive/1.2.0.zip   --no-check-certificate

unzip   1.2.0.zip

2、进入解压目录

cd lz4-java-1.2.0/

        3、修改build.xml增加-fsigned-char

vi build.xml

增加如下内容

      <compilerarg   value="-fsigned-char"/>

lz4-1.3.0-1.PNG

4、修改ivy.xmllz4-java编译后的版本号

vi ivy.xml

注释如下红框内注释内容,并增加如下行

  <info   organisation="net.jpountz.lz4" module="lz4"   revision="1.2.0" />

lz4-1.2.0-1.PNG

        5、执行ant编译命令进行编译

ant

lz4-1.2.0-2.PNG

报上图错误时执行ant ivy-bootstrap手动下载ivy-2.2.0.jar

    【注】:如通过ant ivy-bootstrap无法下载ivy-2.2.0.jar,可以通过wget手动下载ivy-2.2.0.jarwget http://repo1.maven.org/maven2/org/apache/ivy/ivy/2.2.0/ivy-2.2.0.jar

         6、重新执行ant编译

ant

lz4-1.2.0-3.PNG

7、查看编译后的lz4-1.2.0.jar

cd   dist/

lz4-1.2.0-4.PNG

8、将编译的lz4-1.2.0.jar替换到本地maven

cd   dist/

cp   lz4-1.2.0.jar /root/.m2/repository/net/jpountz/lz4/lz4/1.2.0/

 

5验证

1、编译验证

使用checkSo工具(获取地址:https://bbs.huaweicloud.com/forum/thread-22679-1-1.html)检查编译后的lz4-1.3.0.jar是否不再含有依赖的x86架构的so文件,检查方法参考工具中的 《CheckSo使用说明.docx》,无依赖的x86架构的so文件则表明编译成功。

2、功能验证

不涉及。

6参考信息

  1. https://github.com/lz4/lz4

  2. https://bbs.huaweicloud.com/forum/thread-36108-1-1.html



7FAQ

1、编译参考 “4 编译安装”中的编译过程。

 

举报
分享

分享文章到朋友圈

分享文章到微博

五湖四海@银河护卫队

发帖: 106粉丝: 34

级别 : 版主

发消息 + 关注

发表于2020年07月22日 19:35:32
直达本楼层的链接
沙发
显示全部楼层

在/root/.ant/lib/路径下执行wget http://repo1.maven.org/maven2/org/apache/ivy/ivy/2.2.0/ivy-2.2.0.jar

报如下“ERROR 501:HTTPS Required”错误时,

image.png

执行wget https://repo1.maven.org/maven2/org/apache/ivy/ivy/2.2.0/ivy-2.2.0.jar解决

点赞 评论 引用 举报

游客

富文本
Markdown
您需要登录后才可以回帖 登录 | 立即注册