Update 05-09-2009: if you are searching for resources on 32-bit application support under 64-bit GNU/Linux Fedora 9, Fedora 10 and higher release distributions, you may also want to read Metztli Bits: Providing 32-bit Application Support Under 64-bit GNU/Linux Fedora.
In this how-to web log entry I will analyze one way to install the IBM Lotus Symphony GA 1 office productivity suite into an 64-bit Fedora distribution. It should be noted that Fedora 9, like 32 and 64-bit Debian and Ubuntu, are not officially supported platforms by IBM Lotus to install (and provide support for) Symphony 1. Nevertheless, whereas Ubuntu support is to be provided in a future Symphony release, there appear to be no immediate plans to support the fast-moving, cutting edge technology, as represented by Debian and Fedora --of which version 9, codenamed Sulphur, is an example.
With the above in mind, let me disclose that after Symphony is installed under 64-bit Fedora 9, there will be a couple of issues that during my limited testing do not appear to affect the core functionality of the office productivity suite. One of those is the initial Home tab that an user simply may close and select to work from the New menu. The other one is the lack of functionality of the integrated browser. Both issues also affect the Symphony installation under 32 and 64-bit Ubuntu and Debian --as expounded in prior relevant web log entries.
The 64-bit Fedora 9 network install image apparently needs further work because its mechanism was not able to detect either of the two network interface controller (NIC) cards in a Sun Microsystems Ultra 20 M2 AMD64 workstation; on the other hand, a network install image from 64-bit Debian testing and CentOS5.1 did, in effect, detect the NICs and intstall into the machine from their corresponding Internet repositories.
Hence, I was forced to download and subsequently burn a 64-bit Fedora 9 DVD image and install from the local device in the Sun workstation. Upon the very first boot, I allowed Fedora 9 to update itself. I set the SElinux to permissive mode (from its default of enforcing), since the security enforcing application complained about some aspect of the update. We should remember that this distribution of 64-bit Fedora is cutting edge technology (like its Debian unstable counterpart) but it is also a testing platform for components that will subsequently make it into the official stable Red Hat enterprise distributions. Hence, we should expect some rough functionality aspects.
After the considerable update process ended, I rebooted the machine, opened up a terminal from the System Tools and I became root user by typing:
[jose@Mictlantecutli ~]$ su root
(sample output)
Password:
[root@Mictlantecutli jose]#
and provided my Bash shell with a little color:
[root@Mictlantecutli jose]# alias ls='ls -F --color=auto'
And subsequently tried to install Symphony which had been downloaded to my local home directory, by typing:
[root@Mictlantecutli jose]# ./IBM_Lotus_Symphony_linux.bin
(sample shell output)
IBM Lotus Symphony - starting installation... please wait
Installation requires libstdc++.so.5 to continue.
Ok, we need to overcome this first obstacle --just like it is necessary under 32-bit Fedora 8, that I covered in a relevant web log.
However, even if we install the appropriate libraries from the GUI package management interface (as illustrated above), we will obtain the same error as before; sure, we could create a symbolic link as we did in 64-bit CentOS5.1 --as shown in the relevant section of the past IBM Lotus Symphony GA 1 on 64-bit Ubuntu 8.04 and 64-bit Debian, but we should realize that, unlike the 64-bit CentOS5.1 instance, 64-bit Fedora 9 does not provide 32-bit support (by a default install) for applications like Symphony 1. Accordingly, our immediate task is to find out which libraries are to provide the equivalent 32-bit support under 64-bit Fedora 9 that the ia32 Suite does for 64-bit Debian and Ubuntu.
Installing 32-bit support libraries under 64-bit Fedora 9 Sulphur
Reiterating, 64-bit Fedora 9 does not come by default with 32-bit support for applications that are 32-bit --like the IBM Lotus Symphony 1. As elaborated in prior blog on 64-bit Debian and Ubuntu, 64-bit Fedora 9 also needs the equivalent libraries provided by the ia32 Suite. Nevertheless, searching around for an appropriate RPM set of packages that provides the equivalent functionality as the ia32 suite does on 64-bit Debian and Ubuntu GNU/Linux distributions was futile. Note that such collection of packages may exist but I simply did not find it.
For my first attempt, I downloaded the 64-bit Debian unstable distribution of the ia32-libs and subsequently converted the DEB package into an RPM equivalent through the Debian alien package converter utility. The RPM procedure worked fairly well under 64-bit Fedora 9 but I did not want potential users to depend exclusively on my distribution of the ia32-libs hack; the former simply reflects our attitude at Metztli Information Technology: we strive to provide solutions that will not hold the customer hostage to any single provider. Besides, future 64-bit Fedora updates might complain about a given dependency issue due to the non-uniform Debian-derived ia32-libs hack.
There had to be another way. I deduced the equivalent ia32 Suite support for Fedora 9 by using its package management utility yum resolvedep to "Determine which [RPM] package provides the given dependency [for the reference Debian ia32-libs]." The result is this text file that I named metztli-F9-ia32-libs.text that lists 81 packages that will enable 32-bit applications like the IBM Lotus Symphony 1 to execute under 64-bit Fedora 9 GNU/Linux.
If you are wondering how you will install manually all those packages in the list from a Fedora repository, the simple answer is that we will automate the process. We will use the Fedora yum install command to do it for us --however expect to wait some half of an hour for the procedure to complete, depending in your hardware, load, etc.. Assuming you decide to download the file, once you have the metztli-F9-ia32-libs.text file in your current directory, you may want to rename it to anything that you feel comfortable with. For instance, I initially used the name ia32-libs.txt and typed as follows:
(all in a single line)
for i in $(< ia32-libs.txt); do yum -y install $i; done
In short, what the above loop does is select each i386 package listed in the ia32-libs.txt source and use yum to install --the procedure will repeat until all of the 81 packages and its dependencies are downloaded and installed into 64-bit Fedora 9 GNU/Linux distribution.
Additionally, please note that the -y option to yum is necessary if you do not want to be prompted for approval by yum for every single one of the 81 packages providing 32-bit support that yum will download and install for you.
Note that the download will be done from the 64-bit Fedora 9 default repository or that of the users' own selection. Accordingly, the subsequently installed packages will be able to be updated regularly as the Fedora 9 organization distributes them for consumption. The only resource I am providing is the list of packages for 32-bit support not the packages themselves.
Below is a snapshot of the procedure in my system.
One point needs to be explained regarding the above snapshot, notwithstanding. I am redirecting my screen output to a couple of files named EstoPaso and EstoPasoTambien (as shown by the use of redirectors >>) --hence the reason no verbose output is shown to my shell window. In the case the user types the command as suggested in the code above and not as I did in the screenshot, s/he should expect to see the yum utility filling the shell screen with pages and pages of the processes that it is performing, like figuring out package dependencies, downloading those, and subsequently installing those packages that satisfy the list provided by metztli-F9-ia32-libs.text.
Once the yum processes all the files listed in metztli-F9-ia32-libs.text, there should be no more complaints regarding libstdc++.so.5 anymore since the proper support for the libraries will have been installed by aggregation of packages in metztli-F9-ia32-libs.text.
Symphony 1 may need the help of sed to be installed into 64-bit Fedora 9
Let us try once more to install Symphony from our current working directory:
[root@Mictlantecutli jose]# ./IBM_Lotus_Symphony_linux.bin
(sample shell output)
IBM Lotus Symphony - starting installation... please wait
mktemp: too few X's in template `/tmp/symphony103581214657246.tmp'
tar: option requires an argument -- C
Try `tar --help' or `tar --usage' for more information.
./IBM_Lotus_Symphony_linux.bin: line 30: ./setup.bin: No such file or directory
Here is where an user at the IBM Lotus Symphony forum, who goes by the name of lance, made an important contribution that will allow us to continue. Assuming that our current home directory holds the IBM_Lotus_Symphony_linux.bin binary file, make a copy of it and save it in another location. For instance, I copied IBM_Lotus_Symphony_linux.bin to my Desktop directory and subsequently I changed directories to the Desktop file location in my shell; I will be applying the procedure specified below to the Symphony binary that I copied here previously, evidently:
(all in a single line)
sed -i 's/\/tmp\/symphony.*.tmp//' IBM_Lotus_Symphony_linux.bin
Observe the file that appears momentarily, just below the IBM_Lotus_Symphony_linux.bin, while the above procedure is taking place: sed is modifying the Symphony 1 binary.
After the sed modification process finishes, we attempt to install Symphony 1 once more using, of course, the sed modified Symphony binary in our Desktop:
[root@Mictlantecutli Desktop]# ./IBM_Lotus_Symphony_linux.bin
Some users have reported that they need to move the sed-modified Symphony binary to their Fedora 9 /tmp directory in order for Symphony 1 installation splash screen to appear --as it did above in our snapshot; notwithstanding, if that is not the case, the user simply proceeds to the next step in the installation phase:
Evidently, although the no-charge IBM Lotus Symphony is based on OpenOffice, the office productivity suite is not open source --but it is open standards.
If you proceed to the next step, please note the file associations that will be enabled and/or changed by the Symphony 1 office productivity suite. De-select the checkmarks in the small squares if you do not want your current file associations to be modified by Symphony 1.
The default IBM Lotus Symphony 1 installation directory is shown:
/opt/ibm/lotus/Symphony
As the root, super user, or administrator, of the GNU/Linux 64-bit Fedora 9 system, you should realize that the IBM Lotus Symphony 1 is a multi-user office productivity application. Symphony 1 will accommodate individual (regular) users' need for customizations, like language, by creating a directory (.lotus) in the home of each user of the office productivity application. Hence itis not necessary to install Symphony in any of the users home directories.
Once the root user agreed to install Symphony 1 in an appropriate directory location, the installation proceeds:
After a few more minutes, the Symphony 1 installation routine finishes and the user has the option to start Symphony 1 after selecting the Finish rectangular button. The default, as is seen by the checkmark in the small square, is to test the installation as the root or super user that has just installed Symphony 1.
Reiterating, unsupported GNU/Linux platforms have a couple of issues. One of them is that the Symphony 1 Home tab displays an error that apparently relates to the environment variable MOZILLA_FIVE_HOME. Nevertheless, it may be related to the absence of proper browser/Java 32-bit support.
However, the core functionality of the IBM Lotus Symphony 1 is not apparently affected in unsupported GNU/Linux platforms like 64-bit Fedora 9. Closing Symphony's Home tab and selecting to open any of the Documents, SpreadSheets, or Presentations, from the New menu object will enable the respective office productivity object functionality.
To illustrate, having selected to associate office productivity file types with Symphony, I double-clicked on the just downloaded Lotus Presentation template WhiteFloral.otp from the online IBM Lotus Symphony Gallery --that I hope Hana will find visually attractive as well. And yes, I modified it a little:
And decided to manipulate this other one:
DISCLAIMER although due diligence has been applied, the metztli-F9-ia32-libs.text resource is made available for testing/evaluation purposes on an AS IS basis. Those files listed in the resource only reflect my own limited testing --as expounded above-- and the potential user that manipulates any or all of those (files) assumes all risks.
Please do not hold me or Metztli Information Technology responsible if the information provided here does not achieve the desired result. The information is provided AS IS and with the hope that it may be useful to the Internet community --especially Fedora 9 users.
Notwithstanding, There is no implicit or explicit guarantee that the information presented here is accurate --even though due diligence was exercised during the procedure. Accordingly, if an user(s) decide to implement the procedure described here she, he, or them, do so at her, his, or their own risk. You have been forewarned.
Works fine. Thanks a lot!
*f*ck you Sun, without a good 64-bit jre.