1 Star 0 Fork 4

kylin_test / 附加基础库 Additional Base Lib

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

Additional Base Lib 附加基础库

用轻量级容器工具bubblewrap解决GNU/Linux操作系统中常见的glibc不兼容问题。

概述

如果经常在GNU/Linux平台使用非系统软件源内的应用,很容易遇到这样的问题:
/lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.xx' not found (required by /path/to/xxx)
这是因为程序编译时的使用的glibc高于运行时使用的版本。网上流传的解决方案通常是让你升级系统中的glibc,但是由于glibc是GNU/Linux系统中极其重要的组件,贸然行事很容易造成系统损坏。尽管确实有一些更合理的解决方法,但是他们都比较麻烦。而这个小工具简单快捷,方便安装,没有任何安全隐患。

许可

ablrun等脚本文件没有许可证限制。附带的glibc等动态库文件都是取自一些GNU/Linux发行版的,请遵守相应的许可。

注意事项

  1. 软件包可以安装在使用dpkg或rpm的发行版上。移植到其他发行版平台也很容易。
  2. 大多数应用都能运行,但是一些需要权限的不可以。如果你发现了应该可以但实际上不能运行的应用,请向我报告。
  3. 在glibc之外还打包了一个libstdc++的动态库,因为这个问题也比较常见。
  4. 这个脚本只关注解决glibc的兼容问题,因此很多时候你还需要解决一些其他的动态库问题才能让应用运行。你可以在使用ablrun的同时使用LD_LIBRARY_PATH环境变量改变动态库寻找的位置,解决一些其他动态库问题。

用法

首先需要安装additional-base-lib的软件包,可以在右侧发行版处下载。
如果你使用的是debian衍生版,使用这个命令安装:
sudo apt install "path/to/package_name.deb"
基于rpm的发行版,请使用相应的包管理命令。

此后只需要在出现glibc问题的命令前面,加上ablrun和空格即可:
ablrun [命令 [运行选项 ...]]

卸载也需要通过系统的包管理器。
如果使用的是debian衍生版,使用这个命令卸载:
sudo apt remove additional-base-lib
基于rpm的发行版,请使用相应的包管理命令。

其他资源

最初的发布页面:
https://bbs.deepin.org/post/256555

解决动态库问题的通用解决方法:
https://bbs.deepin.org/post/256081

定制

如果这里发布的deb包不符合你的要求(库版本、架构),你可以使用make-deb.sh创造你自己的附加基础库。你需要将项目下载到本地,然后编辑这个脚本,把三个包的下载链接改成你想要的即可。你可以在debian的网站找到各种版本和架构的下载链接:https://www.debian.org/distrib/packages ,然后在当前目录中执行make-deb.sh即可。他会自动识别软件包的架构并采取相应方案。
在这之前,你需要安装以下软件包:bash, coreutils, dpkg, dpkg-dev, grep, wget, patchelf

对于rpm包,你可以使用make-rpm.sh,你需要将项目下载到本地,然后编辑这个脚本,把三个包的下载链接改成你想要的即可。你可以在fedora的网站找到各种版本和架构的下载链接:https://packages.fedoraproject.org/ ,然后在当前目录中执行make-rpm.sh即可。他会自动识别软件包的架构并采取相应方案。rpm包会存储在~/rpmbuild/RPMS中。
在这之前,你需要安装以下软件包:bash, coreutils, rpm-build, wget, patchelf

空文件

简介

用轻量级容器工具bubblewrap解决GNU/Linux操作系统中常见的glibc不兼容问题。 展开 收起
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
1
https://gitee.com/kylintest/additional-base-lib.git
git@gitee.com:kylintest/additional-base-lib.git
kylintest
additional-base-lib
附加基础库 Additional Base Lib
master

搜索帮助