arm rk3588 升级glibc2.31到2.33

一、查看glibc版本

复制代码
root@ztl:~# ldd --version
ldd (Ubuntu GLIBC 2.31-0ubuntu9.2) 2.31
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Written by Roland McGrath and Ulrich Drepper.

得出当前glibc版本为2.31

二、添加源

使用ubuntu-ports的source list,如

复制代码
http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/

这里说明下ubuntu/和ubuntu-ports/的区别:

  • 前者是achieve源,收录的架构为 AMD64 (x86_64) 和 Intel x86。
  • 后者是ports源,收录的架构为 arm64,armhf,PowerPC,ppc64el 和 s390x等,对于树莓派等ARM架构的开发板,需要使用ports源。

以ubuntu 22.04为例,可以使用如下清华源:

执行:

复制代码
sudo vim /etc/apt/sources.list

添加:

复制代码
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy main restricted universe multiverse

# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy main restricted universe multiverse

deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-updates main restricted universe multiverse

# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-updates main restricted universe multiverse

deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-backports main restricted universe multiverse

# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-backports main restricted universe multiverse

# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-security main restricted universe multiverse

# # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-security main restricted universe multiverse

deb http://ports.ubuntu.com/ubuntu-ports/ jammy-security main restricted universe multiverse

然后执行:

复制代码
sudo apt-get update
sudo apt install libc6

再次查看glibc版本:

复制代码
root@ztl:~# ldd --version
ldd (Ubuntu GLIBC 2.35-0ubuntu3.8) 2.35
Copyright (C) 2022 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Written by Roland McGrath and Ulrich Drepper.

三、其他方式

执行

复制代码
sudo vim /etc/apt/sources.list

添加:

复制代码
deb [arch=amd64,i386] http://archive.ubuntu.com/ubuntu/ xenial main universe
deb [arch=arm64] http://ports.ubuntu.com/ubuntu-ports xenial main universe

参考:

复制代码
You have errors in the sources.list configuration files.

The binary packages for arm64 architecture are not available on the same repository servers as the i386 and amd64 packages, but only on the ports.ubuntu.com server.

Do you really need binaries for arm64 architecture?

If no, then you should remove arm64 as foreign architecture with the command
sudo dpkg --remove-architecture arm64

If you need that additional architecture (e.g. because of doing cross-compilation), you have to reorganize your sources.list files and separate the lines for i386 and amd64 from those for arm64, something like

deb [arch=amd64,i386] http://archive.ubuntu.com/ubuntu/ xenial main universe
deb [arch=arm64] http://ports.ubuntu.com/ubuntu-ports xenial main universe

In any case you have to make sure that the command "sudo apt-get update" does not show any error message (like 404 Not found) any more.
相关推荐
切糕师学AI1 天前
ARM 汇编指令:STR
汇编·arm开发
ShiMetaPi2 天前
GM-3568JHF丨ARM+FPGA异构开发板系列教程:外设教程 04 WIFI
网络·arm开发·fpga开发·智能路由器·fpga
切糕师学AI2 天前
ARM 架构中的浮点寄存器(Floating-Point Registers)
arm开发·寄存器·浮点寄存器
再遇当年2 天前
因为研究平台arm,RK3588交叉编译误把我笔记本X86平台的/x86_64-linux-gnu文件删除,导致联想拯救者笔记本中的ubuntu系统损坏
linux·arm开发·ros·gnu·交叉编译·x86
切糕师学AI3 天前
ARM 架构中的 CONTROL 寄存器
arm开发·硬件架构·嵌入式·芯片·寄存器
richxu202510013 天前
嵌入式学习之路>单片机核心原理篇>(14) ARM 架构
arm开发·单片机·学习
切糕师学AI3 天前
ARM 汇编指令:LDR
汇编·arm开发
亿道电子Emdoor4 天前
【Arm】解决Keil MDK报错提示找不到编译器路径的问题
arm开发
cooldream20094 天前
RISC-V 全景解析:在 x86 与 ARM 之间,理解开放指令集的真正价值
arm开发·risc-v
切糕师学AI5 天前
ARM 架构中的数据内存屏障指令 DMB
arm开发·架构·指令·内存屏障