Best of Technical Support

Our experts answer your technical questions.
ELF Upgrade Tips

Chances are that you did not install the ELF libraries that you need in order to execute ELF programs. Your library files must match those of your executables.

Many Linux distributions include both sets of libraries to allow users to use either set of executables, especially since many existing programs have not been recompiled as ELF binaries yet. This can be convenient to use, but difficult to duplicate, especially without knowing your exact system setup at this point.

You could be headed for trouble if you try to update your system libraries to support ELF binaries. Since your system is currently completely a.out, some of your binaries will stop working if you don't install the new libraries correctly, and you end up removing your old ones. If you really want to do this, there is a file called move_to_elf in the GCC directory of your favorite Sunsite mirror. This file describes what you need and what you must do to upgrade to ELF from an a.out system.

If you feel nervous about changing your system library files, you might consider simply installing the newest version of Slackware and restoring your original configuration from it. You can generally get a CD of Slackware 3.x for next to nothing, and you will get not only one of the most recent stable kernels (2.0.x) but your system will be ELF-based. Also, the new Slackware distributions come with a working ELF/a.out mixed set of libraries, which will eliminate your worries if you want support for both. —Chad Robinson, chadr@brttech.comBRT Technical Services Corporation

Dropping Performance with 2.0 Kernel

I have just upgraded my kernel from 1.2.12 to 2.0.18. With this my performance and available memory have dropped significantly. I have only 8MB of RAM and a 16MB swap partition. Everything but the essential modules is handled by kerneld. Why has my memory useage gone up so drastically? Is there anything to fix this? —Mr. Shannon Spurling

Streamlining To Save RAM

In general, performance will be much better with the 2.0.x kernels than with the 1.2.x kernels. One possible answer to your problem may be your use of kerneld. That does add some overhead. Also, loading drivers as modules does use up some additional RAM. You are better off compiling drivers into the kernel if you use them most of the time. You are also better off (especially in a low memory situation) if you can avoid using kerneld entirely. —Steven Pritchard, steve@silug.orgSouthern Illinois Linux Users Group

More Memory Needed

The versions 2.0 or higher need more memory than 1.2.x. The only way to fix the problem is to install more memory. With 16MB or more you will have a better performance than with 1.2.x! —Klaus FrankenS.u.S.E GmbH

X-Terms on Strike

Recently my xterms stopped working. I get the message cannot load libncurses.so.3.0. So I downloaded the only package I could find that had “ncurses” in the name—ncurses1.9.9e. This didn't fix my problem. Can you please tell me how to fix this? —Samuel Greeley

Establishing a Symbolic Link

Here are some possible answers. First of all, libncurses.so.3.0 should be a symbolic link to libncurses.so.1.9.9e, so make sure the symbolic link is there. You may need to do an ldconfig if you change anything with your libraries. Another possible problem might be if your xterm is a.out and your libncurses.so is ELF or vice versa. You can check that by running file on the files (i.e. file /usr/X11/bin/xterm), which should tell you whether your xterm binary and your libncurses.so is a.out or ELF. They have to match or xterm won't run. —Steven Pritchard, steve@silug.orgSouthern Illinois Linux Users Group

______________________