[Topic DIscussion] Deepin的 GLIBC 的版本,何时升级?
Tofloor
poster avatar
redmibook
deepin
2022-04-08 01:33
Author

我是一个开发者,我用 Qt6 & C++ 开发了一款「中州韵98五笔助手」,可以实现 RIME 平台的参数管理可视化。软件打包是在 Ubuntu20.04 LTS 上做的,基于 Qt6 的考量,它在 GLIBC 的版本上,最低要求是「GLIBC 2.31」。

目前,Deepin 的 GLIBC 版本太低了,还是「GLIBC 2.28」,这使得我打包的跨平台的「AppImage」包,根本不能在 Deepin 上运行。请问 Deepin 何时升级一下 GLIBC 版本?要知道「GLIBC 2.28」是 Ubuntu 16.04 默认的版本……它太陈旧了。

7.png
6.png
5.png
4.png
3.png
2.png
1.png

Reply Favorite View the author
All Replies
1 / 2
To page
deepin-superuser
deepin
2022-04-08 01:40
#1

软件不错

glibc 版本预计短时间内不会更新,可能得等到 V23 了

Reply View the author
redmibook
deepin
2022-04-08 01:54
#2
deepin-superuser

软件不错

glibc 版本预计短时间内不会更新,可能得等到 V23 了

消息准确吗?是有什么困难吗?感觉不至于这么保守啊。

Reply View the author
redmibook
deepin
2022-04-08 01:56
#3

借图顶楼,问下消息。

140749ti63o3i1ot1zat4t.jpg

Reply View the author
Mr-Wan
deepin
2022-04-08 01:59
#4
redmibook

消息准确吗?是有什么困难吗?感觉不至于这么保守啊。

瞎猜:

代码安全审查问题+人手问题.

Reply View the author
deepin-superuser
deepin
2022-04-08 02:00
#5
redmibook

消息准确吗?是有什么困难吗?感觉不至于这么保守啊。

deepin V20 是基于 Debian 10 的,Debian 10 里目前还是 2.28,Debian 11 里才是 2.31,所以得等 V23 版升级到 Debian 11+ 才可以

Reply View the author
redmibook
deepin
2022-04-08 02:10
#6
Mr-Wan

瞎猜:

代码安全审查问题+人手问题.

GLIBC 就是个基础的 C 库,不至于上升到安全层面。

Reply View the author
Mr-Wan
deepin
2022-04-08 02:14
#7
redmibook

GLIBC 就是个基础的 C 库,不至于上升到安全层面。

偷藏的安全问题往往在底层,比如cpu里的minix,主板的uefi,密码算法,之类的.各各不都有大新闻么.

Reply View the author
redmibook
deepin
2022-04-08 02:17
#8
Mr-Wan

偷藏的安全问题往往在底层,比如cpu里的minix,主板的uefi,密码算法,之类的.各各不都有大新闻么.

跟你说的不是一回事儿,GLIBC是C库的接口

Reply View the author
北冥夜未央
deepin
2022-04-08 02:26
#9

五笔还是86用的人多些

Reply View the author
redmibook
deepin
2022-04-08 02:32
#10
北冥夜未央

五笔还是86用的人多些

那是另外一个话题啊

Reply View the author
Feng Yu
deepin
2022-04-08 02:37
#11

glibc版本是底层依赖,不能轻易动。你打包AppImage应该参考官方最佳实践,使用一个glibc版本低的发行版进行打包,比如Ubuntu 16.04,参考AppImage官方文档叙述的glibc部分: https://docs.appimage.org/reference/best-practices.html#binaries-compiled-on-old-enough-base-system

顺带一提,我维护的qBittorrent-Enhanced-Edition的AppImage构建使用的就是Ubuntu 16.04做基础镜像的,可以在deepin运行,而qbittorrent官方的AppImage是在Ubuntu 20.04上构建的,是无法在deepin上运行的

Reply View the author
redmibook
deepin
2022-04-08 02:40
#12
Feng Yu

glibc版本是底层依赖,不能轻易动。你打包AppImage应该参考官方最佳实践,使用一个glibc版本低的发行版进行打包,比如Ubuntu 16.04,参考AppImage官方文档叙述的glibc部分: https://docs.appimage.org/reference/best-practices.html#binaries-compiled-on-old-enough-base-system

顺带一提,我维护的qBittorrent-Enhanced-Edition的AppImage构建使用的就是Ubuntu 16.04做基础镜像的,可以在deepin运行,而qbittorrent官方的AppImage是在Ubuntu 20.04上构建的,是无法在deepin上运行的

主要是 Qt6 在 ubuntu16.04 上存在问题。

Reply View the author
redmibook
deepin
2022-04-08 02:41
#13
Feng Yu

glibc版本是底层依赖,不能轻易动。你打包AppImage应该参考官方最佳实践,使用一个glibc版本低的发行版进行打包,比如Ubuntu 16.04,参考AppImage官方文档叙述的glibc部分: https://docs.appimage.org/reference/best-practices.html#binaries-compiled-on-old-enough-base-system

顺带一提,我维护的qBittorrent-Enhanced-Edition的AppImage构建使用的就是Ubuntu 16.04做基础镜像的,可以在deepin运行,而qbittorrent官方的AppImage是在Ubuntu 20.04上构建的,是无法在deepin上运行的

代码层面,要退回到 Qt5.x 的 API 上,变动挺多的,之前也是回到 Qt5.x ,后来发现维护量太大了。

Reply View the author
Mr-Wan
deepin
2022-04-08 02:44
#14
redmibook

跟你说的不是一回事儿,GLIBC是C库的接口

glibc g:gnu lib:库 c:c语言.

库提供api,相关二进制兼容标准好像是叫做ABI.

这... 接口的说法... 是headers?

Reply View the author
redmibook
deepin
2022-04-08 02:46
#15
Mr-Wan

glibc g:gnu lib:库 c:c语言.

库提供api,相关二进制兼容标准好像是叫做ABI.

这... 接口的说法... 是headers?

行了,你也不了解,就别参与讨论了。

Reply View the author
SamLukeYes
deepin
2022-04-08 02:48
#16

不要指望一个非滚动发行版在不更新大版本的前提下更新 glibc 的版本

Reply View the author
redmibook
deepin
2022-04-08 02:50
#17
SamLukeYes

不要指望一个非滚动发行版在不更新大版本的前提下更新 glibc 的版本

这个确实,不过 『2.28』 确实太旧了。

Reply View the author
Feng Yu
deepin
2022-04-08 03:17
#18
redmibook

主要是 Qt6 在 ubuntu16.04 上存在问题。

你可以参考我的qBittorrent-Enhanced-Edition的AppImage构建脚本,是在ubuntu 16.04上直接源码编译qt6,因为qt官方已经不提供低版本glibc的二进制构建了,只能自己源码编译:

qBittorrent-Enhanced-Edition/build_appimage.sh at v4_4_x · c0re100/qBittorrent-Enhanced-Edition · GitHub

build好的成品你可以在qbittorrent-enhanced-edition的release页面下载AppImage运行看看,使用qt6构建的

Reply View the author
redmibook
deepin
2022-04-08 05:00
#19
Feng Yu

你可以参考我的qBittorrent-Enhanced-Edition的AppImage构建脚本,是在ubuntu 16.04上直接源码编译qt6,因为qt官方已经不提供低版本glibc的二进制构建了,只能自己源码编译:

qBittorrent-Enhanced-Edition/build_appimage.sh at v4_4_x · c0re100/qBittorrent-Enhanced-Edition · GitHub

build好的成品你可以在qbittorrent-enhanced-edition的release页面下载AppImage运行看看,使用qt6构建的

也是个办法,不过一直没有勇气去自己构建 Qt6,它真的太庞大了。

Reply View the author
Feng Yu
deepin
2022-04-08 05:02
#20
redmibook

也是个办法,不过一直没有勇气去自己构建 Qt6,它真的太庞大了。

你有不需要构建整个qt6,你看我的脚本没?只构建你需要的组件就行了,我那个脚本在我的R7 3700x机器上跑也就是几分钟就完了。

qbittorrent用到的qt组件也就是qtbase, qtsvg, qttools这几个,我还额外添加了qt-wayland和qt6gtk2,组件编译很快,qtbase开启了ltcg参数,那个会慢一点,跑一次大概3分钟左右,其他几个插件也就是几秒钟

Reply View the author
1 / 2
To page