It is well known that certain 64-bit programs don't work so well on SuSE 9.0. There are good reasons, for example, that one might want to run Evolution, Mozilla, Netscape and maybe other programs in 32-bit. Also, if one wishes to develop 32-bit applications, it is nice to have a 32-bit system around for that. I've figured out how to do it in a way that provides maximal effect with minimal effort (compared to recompiling every program you wish to run 32-bit). Basically, I have a 32-bit SuSE 9.0 installed on one partition and a 64-bit version installed on another. Then I use a procedure to run the installed 32-bit binaries from the 64-bit kernel. Here is how I set it up: 1. Install 32-bit SuSE 2. Install 64-bit SuSE 3. Mount your SuSE 32 partition as a directory in your SuSE-64 tree. Mount the 64-bit tmp, proc and user data partitions into your SuSE-32 file tree using bind mounts. I did so using the following lines in /etc/fstab (assuming /dev/hda2 is the 32-bit SuSE partition and /dev/hda6 is where my user data is stored; /export/home/xxx is the home directory for user xxx): /dev/hda5 / ext3 defaults 1 1 /dev/hda2 /SuSE32 reiserfs defaults 1 2 /dev/hda6 /export ext3 defaults 1 2 /tmp /SuSE32/tmp none rw,bind 0 0 /proc /SuSE32/proc none rw,bind 0 0 /export /SuSE32/export none rw,bind 0 0 You might also want to bind mount your 64-bit /etc file over to /SuSE32/etc 4. Now, you can use chroot to run 32-bit SuSE programs that have been installed on the /SuSE32 partition. For example, the following will run the 32-bit YaST: su chroot /SuSE32 yast 5. Of course, you might be concerned that this is a cumbersome way to run 32-bit programs. I've made a 32-bit launcher program (called suse32.c) that allows one to do this chroot process easily and automatically, without superuser privileges. Source code is attached. Compile and install with: gcc -o suse32 suse32.c chown root:root suse32 chmod +s suse32 cp suse32 /usr/local/bin 6. Now you can run 32-bit programs simply by prepending 'suse32' to their command lines. A few things to be careful of: a) This particular launcher does NOT search the $PATH variable, although all environment variables are passed through. Thus, you must give the ABSOLUTE PATHNAME of the 32-bit binary you wish to run (relative to the chroot environment). The command: suse32 mozilla will NOT work. However, suse32 /usr/bin/mozilla WILL work. You can also use the following, in the case that you have a program installed in both the 32-bit and 64-bit environments: suse32 `which mozilla` 7. Some programs still might not work without a bit of tinkering. I'm never quite sure why; probably they get the wrong environment or something. For example, to get 32-bit Evolution to work, I had to do: cd /SuSE32/opt/gnome; ln -s lib lib64 I was able to install SuSE Wine Rack and MS Office 2000 in the chroot environment. The resulting system does NOT need suse32 to run. Beware, the KDE desktop integration stuff might not always work perfectly in all cases. No matter, I just invoke MS Office from shell scripts. For example, my script winword looks like: "/SuSE32/opt/cxoffice/bin/wine" --check --cx-app "C://Program Files//Microsoft Office//Office//WINWORD.EXE" $* In order so that ALL programs would use 32-bit mozilla (eg: Evolution), I changed my (SuSE64-partition) /usr/bin/mozilla to a shell script: /export/local/bin/suse32 /usr/bin/mozilla $* 8. You can also change your desktop launcher icons to use this new scheme. For exmaple, the "execute" tab on my Evolution icon has the following command in it: suse32 /opt/gnome/bin/evolution-1.4 9. For easy development in 32 bits, one can just say: suse32 konsole That gives you a 32-bit shell, you can run 32-bit gcc, etc. from it. Actually, I've made a desktop launcher icon that throws up a different-looking konsole, so I know it's 32-bit /export/local/bin/suse32 /opt/kde3/bin/konsole --style marble --icon gnome-term-linux -T '32-Bit' I even chose a different icon for it, so I can keep everything apart easily. --- I've been using this scheme for a couple of weeks and am quite happy with it. Sure it wastes disk space. But once you figure out the half-dozen applications you'd rather run 32-bit and configure them as such, you forget about it all; things "just work". Enjoy, -- Bob