[tulip] Compiling in the tulip driver

David Shochat shochat@acm.org
Sat, 25 Nov 2000 07:41:11 -0500


james hill wrote:

> I have kernel 2.2.16-22smp install currently. I have installed the
> ***source*** rpm. I am using RH7.0
> 
> 
>> For example, if you have a RedHat 2.2 kernel-source RPM installed,
>> (please note ****source****), then since that puts it in
> 
> /usr/src/linux
> 
>> (against the advice of certain respected people), the switch:
> 
> 
> if I use the command 'rpm -ivh kernel-2.2.16-22.src.rpm' this only
> places stuff at two locations:
> 
> a bunch files goes to /usr/src/redhat/SOURCES and spec files goes to
> /usr/src/redhat/SPECS not to /usr/src/linux  There is no directory path
> my system such as that either real or symbolic.

After reading your message I figured it was time for a reality check:

$ rpm -qpl 
ftp://ftp.valinux.com/pub/mirrors/redhat/redhat/redhat-7.0/i386/en/RedHat/RPMS/kernel-source-2.2.16-22.i386.rpm 
| more
(actually all one line)

[snip]

/usr/src/linux-2.2.16/include/linux/adfs_fs_sb.h
/usr/src/linux-2.2.16/include/linux/affs_fs.h
/usr/src/linux-2.2.16/include/linux/affs_fs_i.h
/usr/src/linux-2.2.16/include/linux/affs_fs_sb.h
/usr/src/linux-2.2.16/include/linux/affs_hardblocks.h
/usr/src/linux-2.2.16/include/linux/agp_backend.h
/usr/src/linux-2.2.16/include/linux/agpgart.h
/usr/src/linux-2.2.16/include/linux/amifd.h
/usr/src/linux-2.2.16/include/linux/amifdreg.h
/usr/src/linux-2.2.16/include/linux/amigaffs.h
/usr/src/linux-2.2.16/include/linux/apm_bios.h
/usr/src/linux-2.2.16/include/linux/arcdevice.h
/usr/src/linux-2.2.16/include/linux/atalk.h
/usr/src/linux-2.2.16/include/linux/atari_rootsec.h
/usr/src/linux-2.2.16/include/linux/auto_fs.h
/usr/src/linux-2.2.16/include/linux/autoconf.h
/usr/src/linux-2.2.16/include/linux/awe_voice.h
/usr/src/linux-2.2.16/include/linux/ax25.h
/usr/src/linux-2.2.16/include/linux/b1lli.h
/usr/src/linux-2.2.16/include/linux/b1pcmcia.h
/usr/src/linux-2.2.16/include/linux/baycom.h
/usr/src/linux-2.2.16/include/linux/bigmem.h

So the source RPM really does install the source in 
/usr/src/linux-2.2.16 (including the 2.2 header files which are all you 
really need). You do not need to recompile the kernel itself.

I thought it also created the symbolic link linux->linux-2.2.16 too. If 
not, you can certainly create it yourself.

Or, just forget about the symbolic link and use 
-I/usr/src/linux-2.2.16/include

in your compile command.

However, this may be water under the bridge by now since it seems you 
did get a successful compile. I just wanted to set the record straight 
about where the RedHat kernel source RPM puts its files.
-- David