离线 Broadcom 安装的依赖项不满足

离线 Broadcom 安装的依赖项不满足

我刚刚在 Dell Precision M6500 上安装了 Ubuntu 17.1(因此这台笔记本电脑是 2009-2010 年的旧款),同时还安装了 Windows 7。在 Windows 中,wifi 工作正常(并且 LED 亮起,就在键盘上方)。在 Ubuntu 中,没有 wifi,wifi 灯熄灭,如果我转到 Ubuntu 设置,wifi 页面会显示没有 wifi 适配器。如果我尝试 lspci 命令,我会得到 Broadcom 设备的以下信息:

dell-M6500:~$ lspci -nnk |grep -iA3 broadcom
09:00.0 Ethernet controller [0200]: Broadcom Limited NetXtreme BCM5761e Gigabit Ethernet PCIe [14e4:1680] (rev 10)
    Subsystem: Dell NetXtreme BCM5761e Gigabit Ethernet PCIe [1028:02ef]
    Kernel driver in use: tg3
    Kernel modules: tg3
0c:00.0 Network controller [0280]: Broadcom Limited BCM4322 802.11a/b/g/n Wireless LAN Controller [14e4:432b] (rev 01)
    Subsystem: Dell Wireless 1510 Wireless-N WLAN Mini-Card [1028:000d]
    Kernel driver in use: b43-pci-bridge
    Kernel modules: ssb

如果我按照如何离线安装 Broadcom 无线驱动程序?,我得到了这个:

dell-M6500:~$ ls
bcmwl-kernel-source_6.30.223.271+bdcom-0ubuntu3_amd64.deb  Music
Desktop                                                    Pictures
dkms_2.3-3ubuntu3_all.deb                                  Public
Documents                                                  Templates
Downloads                                                  Videos
examples.desktop
dell-M6500:~$ sudo dpkg -i *.deb
[sudo] password for ...: 
Selecting previously unselected package bcmwl-kernel-source.
(Reading database ... 126010 files and directories currently installed.)
Preparing to unpack bcmwl-kernel-source_6.30.223.271+bdcom-0ubuntu3_amd64.deb ...
Unpacking bcmwl-kernel-source (6.30.223.271+bdcom-0ubuntu3) ...
Selecting previously unselected package dkms.
Preparing to unpack dkms_2.3-3ubuntu3_all.deb ...
Unpacking dkms (2.3-3ubuntu3) ...
dpkg: dependency problems prevent configuration of bcmwl-kernel-source:
 bcmwl-kernel-source depends on linux-libc-dev; however:
  Package linux-libc-dev is not installed.
 bcmwl-kernel-source depends on libc6-dev; however:
  Package libc6-dev is not installed.

dpkg: error processing package bcmwl-kernel-source (--install):
 dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of dkms:
 dkms depends on gcc; however:
  Package gcc is not installed.
 dkms depends on make | build-essential | dpkg-dev; however:
  Package make is not installed.
  Package build-essential is not installed.
  Package dpkg-dev is not installed.

dpkg: error processing package dkms (--install):
 dependency problems - leaving unconfigured
Processing triggers for man-db (2.7.6.1-2) ...
Errors were encountered while processing:
 bcmwl-kernel-source
 dkms

这台笔记本电脑不支持 UEFI 启动,因此没有可以关闭的安全启动选项(我也查看了 BIOS,但找不到任何与安全启动相关的内容)。BIOS 是最新的(A10)。

关于如何让 wifi 正常工作,您有什么想法吗?

答案1

Broadcom 驱动程序安装失败,因为多个软件包依赖项未安装,并且至少在一个情况下,依赖项的依赖项未安装!

你有两个选择。第一个是一分钟选项。向朋友或亲戚请求或借用以太网连接。如果需要,可以用六罐他们最喜欢的饮料贿赂他们。然后打开终端并执行:

sudo apt update
sudo apt install -f bcmwl-kernel-source

完毕!

第二种选择,通常是一周的选择,方法是:https://packages.ubuntu.com/选择,Ubuntu 17.10 的代号。找到缺少的软件包,在你的情况下是 linux-libc-dev、make、build-essential 和 dpkg-dev。一定要下载依赖项的依赖项。例如,如红点所示,制作依赖于 libc6。

在此处输入图片描述

您可以使用以下命令检查它是否已安装:

sudo dpkg -s libc6

在我的系统上,它已经安装好了,所以我看到:

Package: libc6
Status: install ok installed

请务必根据需要下载 32 位或 64 位版本。使用终端命令查找:

arch

如果返回 x86_64,那么您需要这些包的 64 位版本,也称为 amd64。

将所有这些数据传输到 USB 密钥或类似设备上,然后像之前一样进行安装:

sudo dpkg -i *.deb

如果仍有缺失的依赖项,请返回并重试。

我不太清楚你是如何在没有常用软件包 linux-libc-dev、make、build-essential 和 dpkg-dev 的情况下安装 Ubuntu 的,但这个过程应该可以纠正安装。

答案2

最终,chili555 发布的 2 条命令是必要的,但对我而言还不够。以下是我必须执行的操作:

  1. 第一次更新做了这样的事情:

    dell-M6500:~$ sudo apt update
    [sudo] password for some_user: 
    Get:1 http://us.archive.ubuntu.com/ubuntu artful InRelease [237 kB]
    Get:2 http://us.archive.ubuntu.com/ubuntu artful-updates InRelease [78.6 kB]
    ...
    Get:56 http://us.archive.ubuntu.com/ubuntu artful-backports/universe amd64 Packages [2,656 B]
    Get:57 http://us.archive.ubuntu.com/ubuntu artful-backports/universe Translation-en [1,096 B]
    Get:58 http://us.archive.ubuntu.com/ubuntu artful-backports/universe amd64 DEP-11 Metadata [4,680 B]
    Get:59 http://us.archive.ubuntu.com/ubuntu artful-backports/universe DEP-11 64x64 Icons [2,716 B]
    Fetched 37.0 MB in 13s (2,746 kB/s)                                            
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    142 packages can be upgraded. Run 'apt list --upgradable' to see them.
    
  2. 当我尝试在 bcmwl 驱动程序上运行安装时,出现了一些锁定文件错误。我最终再次进行了更新,令人惊讶的是,这更新了更多内容:

    dell-M6500:~$ sudo apt update
    Hit:1 http://us.archive.ubuntu.com/ubuntu artful InRelease
    Hit:2 http://us.archive.ubuntu.com/ubuntu artful-updates InRelease                                 
    Hit:3 http://us.archive.ubuntu.com/ubuntu artful-backports InRelease                               
    Get:4 http://security.ubuntu.com/ubuntu artful-security InRelease [78.6 kB]
    Fetched 78.6 kB in 0s (109 kB/s)                               
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    142 packages can be upgraded. Run 'apt list --upgradable' to see them.
    
  3. 驱动程序安装执行以下操作:

    dell-M6500:~$ sudo apt install bcmwl-kernel-source
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    bcmwl-kernel-source is already the newest version (6.30.223.271+bdcom-0ubuntu3).
    You might want to run 'apt --fix-broken install' to correct these.
    The following packages have unmet dependencies:
     bcmwl-kernel-source : Depends: linux-libc-dev but it is not going to be installed
                           Depends: libc6-dev but it is not going to be installed
     dkms : Depends: gcc but it is not going to be installed
            Depends: make or
                     build-essential but it is not going to be installed or
                     dpkg-dev but it is not going to be installed
            Recommends: fakeroot
    E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).
    
  4. 所以我运行了修复程序。有趣的是,有关于 wl 的输出,我推测是针对无线的:

    dell-M6500:~$ sudo apt --fix-broken install
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    Correcting dependencies... Done
    The following additional packages will be installed:
      gcc gcc-7 libasan4 libatomic1 libc-dev-bin libc6-dev libcilkrts5 libgcc-7-dev libitm1 liblsan0
      libmpx2 libquadmath0 libtsan0 libubsan0 linux-libc-dev make manpages-dev
    Suggested packages:
      gcc-multilib autoconf automake libtool flex bison gcc-doc gcc-7-multilib gcc-7-doc gcc-7-locales
      libgcc1-dbg libgomp1-dbg libitm1-dbg libatomic1-dbg libasan4-dbg liblsan0-dbg libtsan0-dbg
      libubsan0-dbg libcilkrts5-dbg libmpx2-dbg libquadmath0-dbg glibc-doc make-doc
    The following NEW packages will be installed:
      gcc gcc-7 libasan4 libatomic1 libc-dev-bin libc6-dev libcilkrts5 libgcc-7-dev libitm1 liblsan0
      libmpx2 libquadmath0 libtsan0 libubsan0 linux-libc-dev make manpages-dev
    0 upgraded, 17 newly installed, 0 to remove and 142 not upgraded.
    2 not fully installed or removed.
    Need to get 0 B/16.8 MB of archives.
    After this operation, 72.5 MB of additional disk space will be used.
    Do you want to continue? [Y/n]  
    Selecting previously unselected package libitm1:amd64.
    (Reading database ... 126151 files and directories currently installed.)
    Preparing to unpack .../00-libitm1_7.2.0-8ubuntu3_amd64.deb ...
    Unpacking libitm1:amd64 (7.2.0-8ubuntu3) ...
    Selecting previously unselected package libatomic1:amd64.
    Preparing to unpack .../01-libatomic1_7.2.0-8ubuntu3_amd64.deb ...
    Unpacking libatomic1:amd64 (7.2.0-8ubuntu3) ...
    ...
    Building for architecture x86_64
    Building initial module for 4.13.0-16-generic
    Done.
    
    wl:
    Running module version sanity check.
     - Original module
       - No original module exists within this kernel
     - Installation
       - Installing to /lib/modules/4.13.0-16-generic/updates/dkms/
    
    depmod...
    
    DKMS: install completed.
    update-initramfs: deferring update (trigger activated)
    Processing triggers for libc-bin (2.26-0ubuntu2) ...
    Processing triggers for initramfs-tools (0.125ubuntu12) ...
    update-initramfs: Generating /boot/initrd.img-4.13.0-16-generic
    
  5. 最后我重新尝试安装无线驱动程序:

    dell-M6500:~$ sudo apt install bcmwl-kernel-source
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    bcmwl-kernel-source is already the newest version (6.30.223.271+bdcom-0ubuntu3).
    0 upgraded, 0 newly installed, 0 to remove and 142 not upgraded.
    

然后我注意到键盘上方的 wifi LED 亮了。LED 很可能是在步骤 4 之后亮起的,但也有可能是在步骤 1、2 甚至 5 之后亮起的。

相关内容