Pradeep Padala's blog
Virtually the best blog on the web!
Virtually the best blog on the web!
Jun 27th
FC3 and FC4 no longer ship the kernel-source package, as the source RPMS already contain the sources. So, installing and compiling sources is a bit long-winded. The instructions are pretty clear in FC3 and FC4 release notes. For the impatient, here’s a quick run down of what needs be done on FC3.
wget http://download.fedora.redhat.com/pub/fedora/linux/core/updates/3/SRPMS/kernel-2.6.11-1.35_FC3.src.rpm
rpm -i kernel-2.6.11-1.35_FC3.src.rpm
rpmbuild -bp --target=i686 /usr/src/redhat/SPECS/kernel.spec
/usr/src/redhat/usr/src/redhat/BUILD/kernel-2.6.11/linux-2.6.11
cp configs/kernel-i686.config .config
make oldconfig make
You are all set to use the source now. Note that you don’t need to do all this to compile a kernel module. This is necessary only if you need something that is not explicitly exported by the kernel. The instructions are pretty similar for FC4 except that the directory structure in /usr/src is a little different.
Jun 26th
Recently I upgraded to Fedora Core 4 (FC4) after a bit of hassle as I had a lot of third party rpms. I cleaned up the messy rpms and upgrade went fine. After upgrading, I was installing all the third party goodies like Acrobat reader, Java plugins etc. Unfortunately, the Acrobat rpm available on Adobe won’t install as it requires the gcc 3.2 libraries that are shipped in FC3. You will see errors similar to the following:
rpm -ivh AdobeReader_enu-7.0.0-2.i386.rpm error: Failed dependencies: libstdc++.so.5 is needed by AdobeReader_enu-7.0.0-2.i386 libstdc++.so.5(CXXABI_1.2) is needed by AdobeReader_enu-7.0.0-2.i386 libstdc++.so.5(GLIBCPP_3.2) is needed by AdobeReader_enu-7.0.0-2.i386
You can fix this problem by installing the compat libraries from your favourite FC4 repository. In particular, you will need compat-libstdc++-33 (for gcc 3.2) compat-libstdc++-296 (for gcc 2.96). If you need the old compilers, install the compat-gcc-32 package as well. Note that the old gcc can be invoked with gcc32 command.
Jun 25th
I submitted a proposal on building a log structured file system to Google summer of code contest. This is one of my long standing ideas that’s going to be realized (thanks to Google). Read the proposal on my SoC web page.
Jun 24th
It’s been ten days since Open Solaris is released and I had a brief look at the code and discussion forums. I looked at the file system code as I am most familiar with Linux kernel fs code. Their source browser is pretty cool with nice syntax higlighting. The code looked quite neat filled with a lot of comments. That doesn’t mean it’s good, but it’s a good sign. Was looking at the discussion forums and found this interesting post about funny comments in the code. Nice read, enjoy !
Jun 20th
In this post, I am using Linux to refer not only to the kernel but also to all the programs that come bundled with it. In short, I am using Linux as a short form for a typical Linux distribution.
Long long ago in 1998, in my sophomore year, I used to work as an assitant to the system administrator. Well, I was never paid for that job as there is no money from the university for that kind of jobs. Anyway, I voluteered myself to help him with installation etc. I was new to computers and wanted to learn something out of this.
We got some brand new kick-ass 100MHz pentiums with 500MB hard disks and he wanted to install Linux in half of them. The other half get the mother of all problems Windows 98. Everyone was excited at the prospect of touching the state-of-the-art machines and software. We were going to install Slackware 3.5. He gave me two floppies and asked me to insert the floppies one after another and go through the installation. He showed me how to do it by choosing the NFS installation. I had no clue what NFS meant. I was just reading the first few chapters of a C programming book then. Magically, the network installation proceeded and he then showed how to configure networking. The IP address, routes blah blah blah. Then, he asked me to install it on other machines. Without knowing what IP address meant, I was configuring other machines. It was a real thrill, looking at the curses based installation program install everything gracefully and greeting with a login prompt.
So, I had the root !!! I slowly started learning about UNIX. I didn’t read any books, but somehow I stumbled upon the man pages. Someone mentioned that I should start from man man. It was a lot of fun reading on those 80×40 character terminals and I slowly got the hang of UNIX. Then, I wanted to configure X and was introduced to the brutal world of Linux configuration. Ha, I don’t remember how many hours I dumped to configure X and other parts of Linux. But, I think all those countless hours have given me solid understanding of UNIX without ever reading a book.
Fast forward to 2005. I am sitting in front of this 3GHz, 1GB machine with Fedora Core 3. A lot has changed from 1998. Installing Linux is extermely easy now. I yearn for the days when I partitioned with fdisk during installation. The Linux desktop is now much more usable and can be used by a non-programmer for day-to-day activities. I used to be a die-hard fan of command line, but now I use the Redhat system-config GUIs to configure. GUI applications for Linux have become much more polished. I used to use Pine for a long time to check my e-mail. Now, I use Thunderbird. It has everything Pine got and more. A lot of thought has been put into GUI design and the menus, dialog boxes, tabs are quite intutive and well desgined. Upgrading/Updating Linux system is also pretty easy. I used to gripe about the rpm hell that Redhat created. Now, we have yum. Upgrading with yum is a breeze now. The first time I used it for a major upgrade was to upgrade from FC2 to FC3. I was supicious that something will fail, but all I had to do was yum upgrade and watch the magic. The new generation of Linux applications have made life a lot easier even for UNIX junkies like me. Creating images for my papers has always been a mess. I used to use xfig and the interface was non-intuitive to me. I got the work done, but never felt comfortable with it. I tried Word, but converting Word images to eps is a lot of pain and the images don’t look that good. Now, we have the almighty OpenOffice. I exclusively use OpenOffice Draw nowadays as it has options for exporting to almost any format and the eps exported images look flawless.
I can go on like this forever. To conclude, Linux has gone a long way and for a programmer it provides a host of powerful and flexible tools. For a non-programmer, it comes very close to Windows, and if companies like Dell pick up Linux for desktops, it can even surpass Windows.