Compile wireless driver for Fedora

After moving to a new home, I got a wireless router/modem combo with super-G capability from Verizon. So I bought a new wireless Super-G PCI card from Planet for my Dell poweredge 400SC server. The latest Fedora core 3 that I installed on this server, however, didn’t even pick up the card. I had to do some search on Google, and did find some posts of using Madwifi. It was mentioned on http://madwifi.net site that one need to go through a series of steps to install the madwifi driver including installing the kernel source if it’s not available on the server. Even though I did try compiling a new kernel (2.6.10-rc2), in the end, however, I found that probably I only need to install Madwifi on Fedora 3 and there is no need to do anything related to the kernel, because it doesn’t seem to matter which kernel I used once I installed the Madwifi.

According to the Howto on http://madwifi.net, I have to download the madwifi file. I went to http://www.madwifi.net/Install-HOWTO/Drivers/madwifi/1.SourceForge.Madwifi.Drivers/
(Note: The new link is now at http://www.madwifi.net/Downloads/1.SourceForge.Madwifi.Drivers/ on July 4th, 2005) and picked a latest version of 11/20/2004 (http://www.madwifi.net/Install-HOWTO/Drivers/madwifi/1.SourceForge.Madwifi.Drivers/madwifi-20041120.tgz). When I tried to compile it using “make”, it, however, complained that there is no program “uudecode” in my system. Anyway, I had to go to a mirror site of Redhat to download the RPM file sharutils-4.2.1-22.i386.rpm, which contains the uudecode program. The path of the file is /pub/distributions/fedora/linux/core/3/i386/os/Fedora/RPMS/.

$ cd madwifi-20041120
$ make
$ make install

After installing the driver, I rebooted the machine. I was happy to see that the Kuzu indeed picked up the wireless card. The machine hung there for a couple of minutes to set up this card before giving up. After returning to KDE desktop, I click “System Settings” -> “Network”, and found that my wireless card was listed as ath0 along with the ethernet card eth0. I double clicked this card and entered a configuration menu for this card. On the menu, I found a “Wireless Setting”, from which, I could set up the SSID, channel and password etc. After that, I clicked “Activate” for the card, and bing-go, the card comes out successfully 🙂 (Note: in the new Fedora 4, I have to click menu New-> Wireless connection -> Forward, and then configure the card).

BTW, I wrote down the kernel compiling step below anyway because it did cost me most of the time, although maybe for nothing.

First, I go to http://www.kernel.org to download the latest stable Linux kernel, which is 2.6.9. But I got an error related to a SCSI driver while compiling it, like “drivers/scsi/qla2xxx/qla_os.c compile failed …”

I can’t believe why it was called a stable release even it failed in a simple compilation on the latest redhat platform 🙁 Anyway, I had to download the new kernel patch again from kernel.org, and apply the patch.

$ cd linux-2.6.9
$ patch -p1 < ../patch-2.6.10-rc2 $ make menuconfig $ make $ mv bzImage /boot/vmlinuz-2.6.10-rc2 $ mv System.map /boot/System.map-2.6.10-rc2 $ vi /boot/grub/grub.conf and add the following lines title Linux 2.6.10-rc2 root (hd0,0) kernel /boot/vmlinuz-2.6.10-rc2 ro root=LABEL=/ rhgb quiet After rebooting, it looks like grub has difficulty reckening the file system, I might need to generate and add the initrd settings.

Blog spam

My site was hit by several comment spams right after I installed WordPress, which forced me to look for good filters to kill those bastards. This link ( http://www.tamba2.org.uk/wordpress/spam/ ) really helps.

Erwin export

Here is the way to export an Erwin schema to a picture file, which I learned from my company’s DBA.

Edit/Copy, then choose picture. You can then choose Metafile or Bitmap (no GIF or JPG, but you should be able to get a bitmap to one of those formats if you wish). This will of course save it to the clipboard, you’ll need to paste it somewhere like a Word document or better yet an image editor.