我正在尝试在 Ubuntu Trusty 上安装 SmartLink 调制解调器。我需要安装sl-调制解调器守护进程但我没有互联网访问,所以我无法使用 Ubuntu 软件中心下载依赖项。
我使用 Windows 计算机访问互联网并下载依赖项。但是,在使用 dpkg 安装 sl-modem-daemon 时,我收到以下错误:
Selecting previously unselected package sl-modem-daemon.
(Reading database ... 164466 files and directories currently installed.)
Preparing to unpack sl-modem-daemon_2.9.11~20110321-9_i386.deb ...
Unpacking sl-modem-daemon (2.9.11~20110321-9) ...
dpkg: dependency problems prevent configuration of sl-modem-daemon:
sl-modem-daemon depends on libasound2 (>= 1.0.16).
sl-modem-daemon depends on libc6 (>= 2.15).
dpkg: error processing package sl-modem-daemon (--install):
dependency problems - leaving unconfigured
Processing triggers for man-db (2.6.7.1-1) ...
Processing triggers for ureadahead (0.100.0-16) ...
ureadahead will be reprofiled on next reboot
Errors were encountered while processing:
sl-modem-daemon
我已经有了libasound2(1.0.27.2-3ubuntu7)和 libc6 (2.19.0)。
dpkg -l
以下是我分别运行和apt-cache policy
命令时的输出:
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-==============-============-============-=================================
ii libasound2:amd 1.0.27.2-3ub amd64 shared library for ALSA applicati
ii libc6:amd64 2.19-0ubuntu amd64 Embedded GNU C Library: Shared
apt-cache policy libasound2 libc6
libasound2:
Installed: 1.0.27.2-3ubuntu7
Candidate: 1.0.27.2-3ubuntu7
Version table:
*** 1.0.27.2-3ubuntu7 0
100 /var/lib/dpkg/status
libc6:
Installed: 2.19-0ubuntu6.6
Candidate: 2.19-0ubuntu6.6
Version table:
*** 2.19-0ubuntu6.6 0
100 /var/lib/dpkg/status
答案1
您正在尝试在 amd64 系统上安装 sl-modem-daemon 的 i386 版本。
事实上,在您的dpkg -i
输出中您有:
准备解压 sl-modem-daemon_2.9.11~20110321-9_i386.deb ... ^^^^
但dpkg -l
说:
ii libasound2:amd 1.0.27.2-3ubamd64 ALSA 应用程序共享库 ii libc6:amd64 2.19-0ubuntuamd64 嵌入式 GNU C 库:共享 ^^^^^
换句话说,您的软件包的版本是正确的,但它们使用了错误的架构。
不幸的是,sl-modem-daemon 仅附带 i386 版本。因此,为了安装它,您应该执行以下操作之一:
- 安装依赖项的 i386 版本,
- 或者重新安装 Ubuntu,这次选择 32 位版本。
答案2
你应该能够从 Ubuntu 主存储库中获取所有需要的软件包http://packages.ubuntu.com
。该软件包说它需要libasound2 (>= 1.0.16)
,我认为这意味着它需要版本 更新1.0.16
在可信赖的 repo 中也可以找到。
另一种方法是运行apt-get install --print-uris sl-modem-daemon
[1]在服务器上,使用可以访问互联网的机器下载所需的文件,然后安装适当的 deb 文件。这可能会更好,因为它sl-modem-daemon
依赖依赖项。
例如,它可能在 Ubuntu 14.04 机器上给出:
'http://gb.archive.ubuntu.com/ubuntu/pool/restricted/s/sl-modem/sl-modem-daemon_2.9.11~20110321-9_i386.deb' sl-modem-daemon_2.9.11~20110321-9_i386.deb 513368 MD5Sum:e46c8d65bf15e284a187ef2fb46521e0
URL 文件名 MD5sum
一旦您设法获取所需的 deb 文件,您dpkg -i /PATH/TO/FILE(S).deb
就可以使用 -gedbi FILE
或软件中心(如果已安装)进行安装。
[1]:这可能只在机器之前曾访问过互联网来更新软件包列表时才有效 - 它print-uris
只是告诉它打印要下载的内容而不是下载它