编程是一门艺术

raptor.zh(at)gmail.com Creative Commons License
本作品采用知识共享署名-非商业性使用-相同方式共享 2.5 中国大陆许可协议进行许可。

archives 存档

01 Jan - 31 Dec 2018
01 Jan - 31 Dec 2017
01 Jan - 31 Dec 2016
01 Jan - 31 Dec 2015
01 Jan - 31 Dec 2014
01 Jan - 31 Dec 2013
01 Jan - 31 Dec 2012
01 Jan - 31 Dec 2011
01 Jan - 31 Dec 2010
01 Jan - 31 Dec 2009
01 Jan - 31 Dec 2008
01 Jan - 31 Dec 2007
01 Jan - 31 Dec 2006
01 Jan - 31 Dec 2005
01 Jan - 31 Dec 2004
01 Jan - 31 Dec 2003
01 Jan - 31 Dec 2002
01 Jan - 31 Dec 2001
01 Jan - 31 Dec 2000
01 Jan - 31 Dec 1999

--

links 链接

--

手工修复Cubieboard2下的curl

问题

CB2下我装的是Cubieez系统,一个基于Debian 7 Wheezy的定制系统,加了一些Debian 8的东西,所以显示的lsb版本信息是8.8 Jessie,但是apt源还是Wheezy的。

估计是因为硬件厂商的NAND驱动没开源,所以内核受制于此,只能用Debian 7,但是一些应用需要高版本,所以搞成这样,以致于依赖问题一塌糊涂,我已经不知道多少次因为不小心升级了udev导致系统崩溃了。

这次是因为curl不能用,一运行就报 Segment Fault ,查不到原因,只能换版本用。

查了一下,apt装上的是相当新的7.52.1,算是Debian 9 Stretch的配置版本,试了一下手工更新到最新的7.52.1-5,还是这个错误。

解决

思路当然是降版本使用了。

第一步就是降到最低版,即Wheezy的7.26.0-1,发现有一堆依赖没解决,既然要解决依赖,那就搞个高点的版本吧,可能依赖还少点。

于是下载了7.38.0-4,即Jessie的版本,然后同时手工更新了libcurl3-7.38.0-4和librtmp1:

wget http://ftp.cn.debian.org/debian/pool/main/c/curl/curl_7.38.0-4+deb8u5_armhf.deb
wget http://ftp.cn.debian.org/debian/pool/main/c/curl/libcurl3_7.38.0-4+deb8u5_armhf.deb
wget http://security.debian.org/debian-security/pool/updates/main/r/rtmpdump/librtmp1_2.4+20150115.gita107cef-1+deb8u1_armhf.deb
dpkg -i curl_7.38.0-4+deb8u5_armhf.deb
dpkg -i libcurl3_7.38.0-4+deb8u5_armhf.deb
dpkg -i librtmp1_2.4+20150115.gita107cef-1+deb8u1_armhf.deb
apt-get install -f

注意,最后一句更新时要看提示,不要随便点yes,否则可能后果很严重。比如万一更新了什么不该更新的东西,系统就挂掉了。

最后把版本HOLD住,防止不慎升级:

echo "curl hold" | dpkg --set-selections

推送到[go4pro.org]

Trackback link:

Please enable javascript to generate a trackback url

No trackbacks

评论(0)


 
   
 
  表情图标 

 


提示: 除了 <b> 和 <i> 之外,其他的Html标签都将从您的评论中去除.url或mail地址会被自动加上链接.