Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

termux 上游变更? #569

Closed
de-conf opened this issue May 29, 2019 · 4 comments
Closed

termux 上游变更? #569

de-conf opened this issue May 29, 2019 · 4 comments

Comments

@de-conf
Copy link

de-conf commented May 29, 2019

termux上游已变更为 https://dl.bintray.com/grimler/ (不确定
导致从f-droid上下载的termux更改为tuna的termux镜像后升级出错。

CANNOT LINK EXECUTABLE "dpkg-deb": library "libz.so.1" not found
dpkg: error processing archive /data/data/com.termux/files/usr/var/cache/apt/archives/libnghttp2_1.38.0_aarch64.deb (--unpack):
 dpkg-deb --control subprocess returned error exit status 1
Errors were encountered while processing:
 /data/data/com.termux/files/usr/var/cache/apt/archives/libnghttp2_1.38.0_aarch64.deb
E: Sub-process /data/data/com.termux/files/usr/bin/dpkg returned an error code (1)

请求调查?

@z4yx
Copy link
Member

z4yx commented Jun 3, 2019

这个错误应该是你本地的文件libz.so.1丢失或损坏了,跟镜像无关。
bintray无法rsync,如果原同步地址彻底关闭的话,我们会再和上游沟通同步方式

@z4yx z4yx closed this as completed Jun 3, 2019
@xlfjn
Copy link

xlfjn commented Jul 6, 2019

遇到了同样的问题,pkg update过程中出现CANNOT LINK EXECUTABLE "dpkg-deb": library "libz.so.1" not found
重现过程(手机系统为 Android 8.1):

  1. 安装最新的Termux(试验时使用了F-Droid上的v0.72)
  2. 打开应用,待它完成bootstrap,然后执行pkg update
  3. 安装一个文本编辑器,此处用pkg install nano
  4. 执行nano $PREFIX/etc/apt/sources.list,将https://dl.bintray.com/termux/termux-packages-24替换为https://mirrors.tuna.tsinghua.edu.cn/termux
  5. 执行pkg update,发现有多个可更新的软件包(而此前用官方源时则没有可更新的软件包)
  6. 进行更新。我这里遇到的错误是
Preparing to unpack .../dpkg_1.19.7_aarch64.deb ...
Unpacking dpkg (1.19.7) over (1.19.7) ...
Setting up dpkg (1.19.7) ...
CANNOT LINK EXECUTABLE "dpkg-deb": library "libz.so.1" not found

根据 https://wiki.termux.com/wiki/Bintray_package_hosting#Repositories_for_android_.3C_7_and_android_.3E.3D_7 所述,https://termux.net/dists下的软件包是为API 21构建的,与https://dl.bintray.com/termux/termux-packages-24内容不同。
ref: tuna/mirror-web#127

@z4yx
Copy link
Member

z4yx commented Jul 21, 2019

fixed in tuna/mirror-web#139

@xlfjn
Copy link

xlfjn commented Jul 24, 2019

我还没有测试 tuna/mirror-web#139 中描述的步骤的效果如何。不过我认为,这样“强行”从为API 24构建的环境切换到为API 21构建的环境就算不会带来软件无法运行的问题,也应当是大部分用户意料之外的事。
恰当的解决方法是同时提供现有的为API 21构建的https://termux.net/dists以及为API 24构建的https://dl.bintray.com/termux/termux-packages-24
如果bintray.com同步起来有困难,那或许应该在帮助页面上告知用户存在这个版本问题。

termux的应用从v0.67开始在Android 7及更新的系统上会bootstrap API 24的环境。老版本在新系统仍然会bootstrap API 21的环境)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants