Linux - HardwareThis forum is for Hardware issues.
Having trouble installing a piece of hardware? Want to know if that peripheral is compatible with Linux?
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
I just installed REdhat9 for the first time on my laptop and it seems working fine. But it has not recognized my NIC which is broadcom 440.
I downloaded the driver, which has both RPM and tar files. There is a readme file which explains what to do.
1. Install the source RPM package:
rpm -ivh bcm4400-<version>.src.rpm
2. CD to the RPM path and build the binary driver for your kernel:
cd /usr/src/{redhat,OpenLinux,turbo,packages,rpm ..}
rpm -bb SPECS/bcm4400.spec
or
rpmbuild -bb SPECS/bcm4400.spec (for RPM version 4.x.x)
I am stuck at the second step, when i type this command it says "-bb unknown option"
So i tried using the Tar file, extracted it, according to this step
1. Create a directory and extract the files:
tar xvzf bcm4400-<version>.tar.gz
then got stuck again.
2. Build the driver bcm4400.o as a loadable module for the running kernel:
cd src
make
when i type the make command, it says Kernel tree not found.....
so guys and Gurus, i am a noob in this area, but please help me to get this working, so i can surf internet with my Linux Redhat 9, which i downloaded 2 days ago.
You need to have a kernel source that matches your running kernel installed to build kernel modules (which is what your trying to do), both the rpm and .tar.gz packages you downloaded are source packages, both need the kernel source installed before you can build the kernel module bcm4400.o.
Originally posted by Aussie You need to have a kernel source that matches your running kernel installed to build kernel modules (which is what your trying to do), both the rpm and .tar.gz packages you downloaded are source packages, both need the kernel source installed before you can build the kernel module bcm4400.o.
Hi I have a similar problem just that I am trying to install Broacom 5700, I've removed tg3 in order to install the new driver. Then I get the source tree not found error msg when I tried to make. I noticed there was a section in distribution doc describing how to prepare source tree but they also said its for United Linux 1.0 not for Red Hat/Mandrake (and I am using Redhat 9)
I am just wondering what you meant by "need to install the kernel source" before building the module. How should I install the kernel source? I am new to Linux. Any help would be appreciated. Thank you very much.
Originally posted by Aussie There will be a kernel source rpm on one of your install disks, make sure it matches the version of your running kernel before you install it.
is it on Disk 1, under "RedHat -> RPMS" folder? but i cant find anything similar to patch-<version>.rpm or linux-<version>.rpm ??
I already checked /usr/src, there is not folder called linux-<version> but there is one called "debug" and one called "RedHat" then BUILD, RPMS, SOURCES, SPECS, SRPMS under redhat. that means I do not have the kernel source right?
so should I do:
1. Go to Add/Remove Applications under Redhat
tick "Kernel Development" and install?
OR
2. cd /proc
cat version
I got this: Linux Version 2.4.20-6 gcc version: 3.2.3 2003 0222 RedHat Linux 3.2.2-5, then i go to kernel.org to download patch-2.4.* ??
then untar it then run make etc command as stated at "Guide to compile Kernel for newbies"??
sorry i'm asking stupid questions but i'm getting very confused...
also can i ask u... how come my kernel doesnt have the source, does it mean its not complete? or it only comes with machine code and that is supposed to work fine and only when i want to install something extra eg. some drivers that it doesnt understand, then it needs to compile the driver hence need its original source code not just the machine code???? Thank you anyone who would kindly answer me
Originally posted by Aussie 1. Go to Add/Remove Applications under Redhat
tick "Kernel Development" and install?
Yes.
You can easily check the running kernel version with the command "uname -r".
Hi Aussie
thank you for your reply. Can you tell me what happens next? I've updated the system using "Add/Remove Application -> Kernel Development". But when I tried to do rpmbuild, error msg still says source tree not found and bad exit at tmp. What should I do about the source tree? (in distribute.txt that comes with the driver they did say how to prepare source tree for United Linux 1.0, but not for RedHat, they said its not necessary to prepare source tree for RedHat?) Would tell me precisely what command I should use to do my source tree? Thank you.
They say you don't need to prepare a source tree for Redhat because there is an rpm that contains a pre-prepared source on one of the install cds, I just don't know what cd and what the exact file name is because I don't use Redhat anymore.
I used to use redhat, but the last version I used was 7.0, and I can't remember what this particular rpm was called, and now that I think of it, this sort of annoyance was one of the things that made me turn my back on rpm based distros.
I'm a newbie too and had the exact same problem. I found that the instructions did work, but only if I was logged on as root. The su command was not sufficient. Log in as root and try the whole thing from scratch again using the rpm instructions.
Thanks for everyone's reply
I've sorted out the problem weeks ago
i did log in as root and my problem was I dont have the source tree
for anyone with the same problem
go search for this file "kernel_source-<your kernel version number>" on google
prepare your source tree and then you will be able to compile your module
thats exactly what I was saying
you dont have the kernel tree
you need to download the kernel tree and prepare it before u can compile ur moduld
1. find out your kernel version with
rname -v
2. search for kernel-source-<version number> on google
then here u got ur source tree (download the rpm file)
I read through the first few posts here, and scanned the rest, they all seemed to be saying how to solve the initial installation problems which I did manage to do (with some help).
My problem now is that the module doesn't seem to be loading properly on boot. When I'm booting into Redhat, I get a failed message when it tries to bring up eth0, saying something about the module not being loaded. Then, when it finished booting and I logged in I can't access anything on the network.
I found that I was able to access the network again by typing the following in a terminal:
Code:
insmod /root/bcm5700-7.1.22/src/bcm5700.o
so I added it to my rc.local file. This didn't stop the error message on booting, however once the booting was finished, I could access my local subnet correctly. I then restored connectivity with non-local subnets by typing this:
Code:
route add default gw 192.168.2.47
which works fine when I type it, but doesn't seem to run when added to rc.local, I have to type it every time I start up.
So (and thanks for reading through all that!), I have two questions:
1. How do I get the module to load correctly when it's supposed to (so it doesn't cause an error when booting)?
2. Why doesn't the default gateway run from the rc.local file, and how do I fix it?
Thank you in advance
(P.S. I'm pretty new to linux, so please excuse any Windows terminology I may have used without thinking!)
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.