# [Solved] Broadcom 64bit driver via emerge: 404 filenot found

## boboon

Hey Gents, while trying to install the "net-wireless/broadcom-sta" driver via emerge, I get the following error. (NOTE: for now you can skim past the code, the gist of this is a mistyped link in emerge):

```

# emerge net-wireless/broadcom-sta

Calculating dependencies... done!

>>> Verifying ebuild manifests

>>> Emerging (1 of 1) net-wireless/broadcom-sta-5.60.48.36-r1

>>> Downloading 'http://www.broadcom.com/docs/linux_sta/hybrid-portsrc-x86_64-v5.60.48.36.tar.gz'

--2010-10-20 14:09:54--  http://www.broadcom.com/docs/linux_sta/hybrid-portsrc-x86_64-v5.60.48.36.tar.gz

Resolving www.broadcom.com... 208.70.88.55

Connecting to www.broadcom.com|208.70.88.55|:80... connected.

HTTP request sent, awaiting response... 404 Not Found

2010-10-20 14:09:55 ERROR 404: Not Found.

!!! Couldn't download 'hybrid-portsrc-x86_64-v5.60.48.36.tar.gz'. Aborting.

 * Fetch failed for 'net-wireless/broadcom-sta-5.60.48.36-r1', Log file:

 *  '/var/tmp/portage/net-wireless/broadcom-sta-5.60.48.36-r1/temp/build.log'

>>> Failed to emerge net-wireless/broadcom-sta-5.60.48.36-r1, Log file:

>>>  '/var/tmp/portage/net-wireless/broadcom-sta-5.60.48.36-r1/temp/build.log'

 * Messages for package net-wireless/broadcom-sta-5.60.48.36-r1:

 * Fetch failed for 'net-wireless/broadcom-sta-5.60.48.36-r1', Log file:

 *  '/var/tmp/portage/net-wireless/broadcom-sta-5.60.48.36-r1/temp/build.log'

```

Right, so 404. But if I navigate to Broadcom's website, they've got the driver available. Look here:

http://www.broadcom.com/support/802.11/linux_sta.php

and you can see that the link is alive and well:

www.broadcom.com/docs/linux_sta/hybrid-portsrc_x86-64_v5.60.246.2.tar.gz

It seems that the URL emerge is going for has a typo in it, specifically the difference is "*-x86*" vs "*_x86*"

Any recommendations on how to get this fixed asap?Last edited by boboon on Tue Oct 26, 2010 9:17 pm; edited 1 time in total

----------

## boboon

for the record, I did do an 

```
emerge --sync
```

 before trying this.

----------

## boboon

further update, I downloaded the source and tried to compile it outside of emerge, but Make fails and states that "CONFIG_WIRELESS_EXT" is not defined or set up.

Problem: in previous installs of gentoo I've had a "CONFIG_WIRELESS_EXT" option in my kernel, but in this current kernel release it appears to have been replaced by "CONFIG_WIRELESS_EXT_SYSFS"

No biggie, right? I went into the complaining source code ("wl_linux.c" and the corresponding *.h) and replaced every instance of "CONFIG_WIRELESS_EXT" with "CONFIG_WIRELESS_EXT_SYSFS". Sadly, this leads to additional errors:

```

/home/boboon/hybrid_wl/src/wl/sys/wl_linux.c: In function 'wl_if_setup':

/home/boboon/hybrid_wl/src/wl/sys/wl_linux.c:242 error: 'struct net_device' has no member named 'wireless_handlers'

/home/boboon/hybrid_wl/src/wl/sys/wl_linux.c: In function '_wl_set_multicast_list':

/home/boboon/hybrid_wl/src/wl/sys/wl_linux.c:1451: warning: assignment from incompatible pointer type

/home/boboon/hybrid_wl/src/wl/sys/wl_linux.c:1451: error: 'struct netdev_hw_addr' has no member named 'next'

make[2]: *** [/home/boboon/hybrid_wl/src/wl/sys/wl_linux.o] Error 1

....

```

The area the errors spawn from is within an "IFDEF CONFIG_WIRELESS_EXT" that I modded to "IFDEF CONFIG_WIRELESS_EXT_SYSFS"

----------

## grzbiet

this version is no longer valid, we'll have to wait for portage update (or create ebuild, but since i don't have network on gentoo host it ebuild * digest will not cooperate)

so meanwhile, you can manually download old package from

http://ftp.heanet.ie/mirrors/ftp.frugalware.org/pub/frugalware/frugalware-1.2/source/network-extra/bcmwl/hybrid-portsrc-x86_64-v5.60.48.36.tar.gz

and put it into /usr/portage/distfiles/

then run emerge again and hopefully you will not have all the fun with modifying kernel configuration I'm having now.

----------

## haranguren

 *grzbiet wrote:*   

> this version is no longer valid, we'll have to wait for portage update (or create ebuild, but since i don't have network on gentoo host it ebuild * digest will not cooperate)
> 
> so meanwhile, you can manually download old package from
> 
> http://ftp.heanet.ie/mirrors/ftp.frugalware.org/pub/frugalware/frugalware-1.2/source/network-extra/bcmwl/hybrid-portsrc-x86_64-v5.60.48.36.tar.gz
> ...

 

Hi, I tried doing this, but when I did insmod wl.ko, I got this error: 

```
FATAL: Error inserting wl (/lib/modules/2.6.36-gentoo/net/wireless/wl.ko): Invalid module format
```

.

I tried compiling the original driver downloaded from the broadcom website, but I got this error:

```

KBUILD_NOPEDANTIC=1 make -C /lib/modules/`uname -r`/build M=`pwd`

make[1]: Entering directory `/usr/src/linux-2.6.36-gentoo'

  WARNING: Symbol version dump /usr/src/linux-2.6.36-gentoo/Module.symvers

           is missing; modules will have no dependencies and modversions.

  LD      /usr/src/hybrid_wl/built-in.o

  CC [M]  /usr/src/hybrid_wl/src/shared/linux_osl.o

  CC [M]  /usr/src/hybrid_wl/src/wl/sys/wl_linux.o

  CC [M]  /usr/src/hybrid_wl/src/wl/sys/wl_iw.o

In file included from /usr/src/hybrid_wl/src/wl/sys/wl_iw.c:34:

/usr/src/hybrid_wl/src/wl/sys/wl_iw.h:65: error: field 'sysioc_sem' has incomplete type

make[2]: *** [/usr/src/hybrid_wl/src/wl/sys/wl_iw.o] Error 1

make[1]: *** [_module_/usr/src/hybrid_wl] Error 2

make[1]: Leaving directory `/usr/src/linux-2.6.36-gentoo'

make: *** [all] Error 2

```

Somebody knows how to solve this?

Thx guys....

----------

## boboon

I guess I should mention where I'm at, too. I tried downloading the broadcom-sta driver directly, and enabled WIRELESS_EXT in my kernel by enabling: Device Drivers ---> Network device support ---> WIreless LAN --->  <*> IEEE 802.11 for Host AP (Prism2....)

However, when I try to compile the drivers manually, I get the following error, which is a subset of the error I had before:

```
# make

KBUILD_NOPEDANTIC=1 make -C /lib/modules/`uname -r`/build M=`pwd`

make[1]: Entering directory `/usr/src/linux-2.6.34-gentoo-r12'

  LD      /home/boboon/onemoretime/hybrid_wl/built-in.o

  CC [M]  /home/boboon/onemoretime/hybrid_wl/src/shared/linux_osl.o

  CC [M]  /home/boboon/onemoretime/hybrid_wl/src/wl/sys/wl_linux.o

/home/boboon/onemoretime/hybrid_wl/src/wl/sys/wl_linux.c: In function '_wl_set_multicast_list':

/home/boboon/onemoretime/hybrid_wl/src/wl/sys/wl_linux.c:1451: warning: assignment from incompatible pointer type

/home/boboon/onemoretime/hybrid_wl/src/wl/sys/wl_linux.c:1451: error: 'struct netdev_hw_addr' has no member named 'next'

make[2]: *** [/home/boboon/onemoretime/hybrid_wl/src/wl/sys/wl_linux.o] Error 1

make[1]: *** [_module_/home/boboon/onemoretime/hybrid_wl] Error 2

make[1]: Leaving directory `/usr/src/linux-2.6.34-gentoo-r12'

make: *** [all] Error 2

```

I don't know about your error, haranguren.

The other thing I tried was using the brcm80211 driver:  http://wireless.kernel.org/en/users/Drivers/brcm80211

I downloaded it, which turned out to be some *.fw files, put them in /usr/src/firmware/brcm/, added them to the kernel via "Device Drivers ---> Generic Driver Options ---> () External firmware blobs to build into the kernel binary", but that didn't work because it couldn't figure out how to turn *.fw files into *.bin.

----------

## boboon

K, well I at last worked around it and got everything working.

Because of some other junk going on (I swear new macbook pros are damned as far as linux installations), I switched from gentoo kernel 2.6.34-r11/r12 to vanilla kernel 2.6.36. I then tried compiling the wireless driver, got no error, followed the instructions, and everything works. Happy days.

----------

## bytenirvana

I downloaded the broadcom package and manually put it in /usr/portage/distfiles (both name versions: with - and with _ ) but emerge still tries to download it from the webpage (and gets the 404 error).

How did you solve that?

----------

