Wednesday, May 06, 2009

Fixing OOo 3.1.0 Installation Problem on Windows

Yesterday, i upgraded my OpenOffice.org installation on Windows and Linux to OOo 3.1.0. On Linux, the upgrade worked just fine without any problems and i have mentioned it on my other blog.

The problem arose when i tried to upgrade on Windows. I downloaded the OOo 3.1.0 from Austrian mirror (GDS) and i removed the previous version prior installing this version. When the installation finished, i tried to try it out but i got an error like this:

the application cannot be started.
loading component library failed:
file://C:/Program%20Files/OpenOffice.org%203/program/../Basis/program/i18npool.uno.dll

I submitted an issue at OOo's issue tracker and the ID was 101570. Several people helped me out to fix this problem as it happened on the final release of OOo 3.1.0, so i guess it will affect many people who will use OOo 3.1.0 on Windows platform.

Right now, i already got the solution, but you will have to fix it manually after installing OOo 3.1.0 on your system. Based on the detailed explanation by sb, he assumed that the dll which couldn't be found (i18npool.uno.dll) depends on other libraries (icuin40.dll and icuuc40.dll) which also depends on icudt40.dll. The problem arose when there are some ICU DLLs which are located on Windows\System32 directory and it has the same name with DLLs that were being used by OOo, but it's not compatible.

OOo's component (soffice) will find the incorrect DLL files from Windows system rather than the correct one from OOo installation directory, resulting the unexpected errors.

The solution is very easy: copy all files named icu*40.dll from OOo's "OpenOffice.org 3\Basis\program" directory to its "OpenOffice.org 3\program" directory. Try to restart OOo and voila, it will work like charm big grin

Thanks to quick responses by OpenOffice.org team and also from the community.