Solved

Re-compiling kernel to add hardware for idiots

Posted on 1998-12-08
13
247 Views
Last Modified: 2013-12-15
I've successfully installed Redhat 4.2 on my old 486. At the time it had no ethernet card. Now I want to add a 3com 3c509 ethernet card. I've found various drivers for this card, I've got a file called 3c509.c on my disk at the moment. Apparantly I have to re-compile the kernel (or something!) to get it to work. I couldn't get it to work. I am a total Unix / Linux idiot (I'm pretty good with MSDOS), so please someone give me some idiot instructions on how to do this. Some help on getting a TCP/IP stack working would be nice too.
0
Comment
Question by:pug_nut
13 Comments
 
LVL 4

Expert Comment

by:mcdonc
Comment Utility
You'll need to recompile the kernel with either:

1)  Module support and include the 3C509 driver as a module.
or...
2)  With the 3C509 driver compiled into the kernel (not as a module).

Read the Kernel-HOWTO for instructions.  It can be found at http://www.math.psu.edu/ward/kernel-howto/

It sounds compilcated and heavy but its actually pretty easy.

Once you do it, the rest should almost take care of itself.
0
 

Author Comment

by:pug_nut
Comment Utility
I've got a bit further, I can run the device driver successfully by typing
insmod /lib/modules/2.0.27/net/3c509.o
and it seems to work
next I though I'd have a go at recompiling, as that's what the Linux site says to do, I've done the following successfully:-
cd /usr/include
rm -rf asm linux scsi
ln -s /usr/src/linux/include/asm-i386 asm
ln -s /usr/src/linux/include/linux linux
ln -s /usr/src/linux/include/scsi scsi

next I did "cd /usr/src/linux"
when I tried to do "make config" I get the error message "make: *** No rule to make target 'config'. Stop."
Now I'm stuck - Help!

0
 
LVL 1

Expert Comment

by:talwyn
Comment Utility
try "make menuconfig"
0
 

Author Comment

by:pug_nut
Comment Utility
I get the same error message except it says:-
make: *** No rule to make target 'menuconfig'. Stop.

0
 
LVL 2

Expert Comment

by:wqclatre
Comment Utility
Mabe you don't have to compile the kernel.

Try to run kernelcfg.
1. kernelcfg
2. klick add and chose eth
3. chose eth0 as moduletype and 3c509 as module.
4. tell which io base and irq you have on the card.
(It can be a good idea to do a cat /proc/ioports and cat /proc/pci and cat /proc/interrupts to check for a free IRQ and io adress. And then use the configuration disk and set the right irq and io adress on the card. (Under dos)

Good Luck!
0
 
LVL 2

Expert Comment

by:wqclatre
Comment Utility
And btw. Do you have the kernelsource installed`? Do you have any Makefile in /usr/src/linux ?
0
Backup Your Microsoft Windows Server®

Backup all your Microsoft Windows Server – on-premises, in remote locations, in private and hybrid clouds. Your entire Windows Server will be backed up in one easy step with patented, block-level disk imaging. We achieve RTOs (recovery time objectives) as low as 15 seconds.

 

Author Comment

by:pug_nut
Comment Utility
Using kernelcfg and netcfg commands under xwindows solved my problems in the end.
kernelcfg added support for my card to the OS
netcfg allowed me to add all the TCP/IP settings
These two programs only work in X
I still don´t know why "make config" doesn´t work, but it doesn´t matter now
0
 
LVL 2

Expert Comment

by:wqclatre
Comment Utility
What files do you have under /usr/src/linux?
Do you have the Makefile???? Do you have the whole source installed??
0
 

Author Comment

by:pug_nut
Comment Utility
I have a directory to /usr/src/linux, it is a symbolic link to a directory called /usr/src/linux-2.0.27
that directory contains a directory called "include" and nothing else
within "include" are "asm" (symbolic link to asm-i386"), "asm-generic", "asm-i386", "linux", "net", and "scsi"
within the /usr/src/linux-2.0.27/include/linux are some .h files and a directory called "modules" containing .ver files
0
 
LVL 2

Accepted Solution

by:
wqclatre earned 40 total points
Comment Utility
Well then the problem is that you don't have the kernelsource installed. I think that you only have the kernel headers and the kernel installed.

Try a rpm -qa | grep kernel
And you will se if you have kernel-source installed.
Otherwise you can download it as rpm from ftp.redhat.com or as a tar.gz file from ftp://ftp.kernel.org/pub/linux/kernel/v2.0/

0
 

Author Comment

by:pug_nut
Comment Utility
Thanks,
When I do "rpm -qa | grep kernel" I get the following response:-
kernel-2.0.27-5
kernel-headers-2.0.27-5
kernel-modules-2.0.27-5
kernelcfg-0.3-3
What does that mean?
0
 
LVL 2

Expert Comment

by:wqclatre
Comment Utility
It means that you have those packages installed. If you had the kernel source installeed you should get kernel-source-2.0.27-5 to when you try the command  rpm -qa | grep kernel
0
 
LVL 2

Expert Comment

by:wqclatre
Comment Utility
You can probably find  a kernel-source-2.0.27-5 rpm on youre redhat cd. do a rpm -ivh filename.rpm and You will get the soure installeed.
0

Featured Post

How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

Join & Write a Comment

If you have a server on collocation with the super-fast CPU, that doesn't mean that you get it running at full power. Here is a preamble. When doing inventory of Linux servers, that I'm administering, I've found that some of them are running on l…
The purpose of this article is to demonstrate how we can use conditional statements using Python.
Learn how to get help with Linux/Unix bash shell commands. Use help to read help documents for built in bash shell commands.: Use man to interface with the online reference manuals for shell commands.: Use man to search man pages for unknown command…
Get a first impression of how PRTG looks and learn how it works.   This video is a short introduction to PRTG, as an initial overview or as a quick start for new PRTG users.

743 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

17 Experts available now in Live!

Get 1:1 Help Now