Apache OpenOffice (AOO) Bugzilla – Issue 22327
cannot register ucpchelp1.dll
Last modified: 2004-05-27 11:47:34 UTC
Hello I have built OO 1.1 for windows under the following relevant environment: - Windows XP Pro - MS Visual Studio .NET - Cygwin + tsch - Lang = PORTBR (Setenv RES_PORTBR TRUE) The build finished with no error messages. If I install into the machine that built it, I have no problems. If I install in another machine (98SE, 2000, Xp) I get cannot register ucphelp1.dll The following 2 lines came from (...)program/setup.log (the rest of the file is OK) ERR register component: ucpchelp1.dll : services.rdb ERR UNO exception (ucpchelp1.dll): loading component library failed: ucpchelp1.dll It worth noting that ucpchelp1.dll exist in the target system in \{program files}\OpenOffice1.1.0\program\ucpchelp1.dll Browsing Issuezilla, I found references to mvscrt.dll, which in my case (the offending system)exist and is scattered in several directories. The most recent one came from Java 1.4.2._01 plugin. Nevertheless I cannot fix it by myself and the consequence is that HELP does not display the text but only the table of content. Any help is appreciated Olivier
Hi Martin, can you help out here?
reassigning
In case you want to test my build it is available in http://www.scinergy.com.br/upload/arquivos/OOo_1.1_Win32Intel_install_pt-BR.zip Olivier
utomo > Olivier Hallot: I think better we discuss this in the tools mailing list, maybe another developer will help you faster
Olivier -> Utomo I already did it long before opening this IZ. http://tools.openoffice.org/servlets/ReadMsg?msgId=922545&listName=dev As you will see, there is not response. Regards Olivier
well, looking inside the guts of regcomp, I issued the command below in a machine where the problem occurs: (In {}/program directory regcomp -register -r services.rdb -c ucpchelp1.dll and I got the following: register component 'ucpchelp1.dll' in registry 'services.rdb' failed! error (CannotRegisterImplementationException): loading component library failed: ucpchelp1.dll Short of further clues. Olivier
I have found that the issue is due to the absence of the dll "msvci70.dll" in the offending machine. Since my machine has the file, it does not bother to complain. Machines without this file acessible to OO Setup will complain with the subject line. There is two ways to solve it. Either the target system has this lib in \windows\system or this file is in \Program_files\OpenOffice1.1.0\program, toghether with mscvp70.dll and msvcr70.dll. This file is located in my building system in \Program Files\Common files\Microsoft Shared\vsa\7.0\VsaEnv\msvci70.dll and in (..)/Microsoft Shared/vsa/7.0/VsaEnv/Packages/Debugger/msvci70.dll I don't know if this file belongs to the VS .NET 2002 compiler or MS SDK 2003. I don't know if this file can legal-wise be distributed by OO. I also dont know how to add this file inside the source to be inserted in the zip files. Mimicking msvcp70.dll in $SRC_ROOT/External and modifying prj/d.lst copies it to the solver but it is not enough to have it included into instsetoo/. What else must be done? Or... may be the need for this file indicates a ill-conditioned build, which have not been flagged since the build works very well once solved this annoying issue. Olivier
Will check once I'm really online again. That can take a while, so please, if anybody else can check that would be nice.
I have verified this morning that msvci70.dll is not required by the build process, by doing the following: I have hidden the file in my build environment and I have rebuilt module xmlhelp with no problems and rebuilt the installation set (instsetoo). Since now my building machine does not have msvci70.dll visible, the issue appears. msvci70.dll is the guy to blame. Olivier
The following patch suggested by Sergiy Kudryk solves the issue. Thank you Sergiy! Olivier
Created attachment 11982 [details] patch suggested by Sergiy Kudryk
Do we will include this patch in OOo 1.1.1 ? (or already included in OOo 1.1.1a? ) so we can reduce the problem, without patch in OOo 1.1.1? Thanks
please mark issue as fixed once it has integrated into cvs, not before. can you please call a "depends ucphelp1.dll" to view this dll is linked, I'm wondering why this dll is needed only in some configurations and would like to avoid adding one more dll to the installation set.
setting resolution to won't fix because of lack of further input.
The 1.1.1 also needs this patch.
reopen. This happens also with our builds. Our build system is Windows 2003, compiler is .NET2002 professional. Our build system is at ftp://ftp.linux.cz/pub/localization/OpenOffice.org/devel/build/ We copy those additional files to the sources as per build guides: pavel@drogo:~/Sources/Windows/external> find . -type f ./dbghelp/DbgHelp.Dll ./msvcp70/msvcp70.dll ./msvcp70/msvcr70.dll ./unicows/unicows.dll If the target system has .NET2002 installed or msvci70.dll copied somewhere, it works. Adding me and Josef to CC:. Prio P2, target 1.1.2.
Confirm issue (hmm, if I reopened it, why it is not automatically confirmed?). The library has ~54k: -rw------- 1 pavel users 54784 Apr 16 11:19 /tmp/MSVCI70.dll I wonder why it is not needed for official builds...
It seems, the problem is in the berkeleydb module. Dependency Walker shows this: UCPHELP1.DLL -> LIBDB32.DLL -> MSVCI70.DLL
This problem is, our localized compilations links MSVCI*.DLL instead of STLPORT_VC745.DLL. What about order of includes - should it be problem?
I've got it, I think. Environment variable INCLUDE generated by configure into winenv.set.sh was INCLUDE=".;e:\\\\home\\\\kwart\\\\OOo\\\\devel2\\\\BuildDir\\\\ooo_cws_srx645_ooo112fix1_src\\\\solver\\\\645\\\\wntmsci8.pro\\\\inc;e:\\\\home\\\\kwart\\\\OOo\\\\devel2\\\\BuildDir\\\\ooo_cws_srx645_ooo112fix1_src\\\\solenv\\\\wntmsci8\\\\inc;e:\\\\home\\\\kwart\\\\OOo\\\\devel2\\\\BuildDir\\\\ooo_cws_srx645_ooo112fix1_src\\\\solenv\\\\inc;c:\\\\PROGRA~1\\\\MICROS~2\\\\include;e:\\\\MICROS~1.NET\\\\VC7\\\\include;c:\\\\j2sdk1.4.2_04\\\\include;c:\\\\j2sdk1.4.2_04\\\\include\\\\win32" if I add path to stl headers before MS .NET headers it works: INCLUDE=".;e:\\\\home\\\\kwart\\\\OOo\\\\devel2\\\\BuildDir\\\\ooo_cws_srx645_ooo112fix1_src\\\\solver\\\\645\\\\wntmsci8.pro\\\\inc;e:\\\\home\\\\kwart\\\\OOo\\\\devel2\\\\BuildDir\\\\ooo_cws_srx645_ooo112fix1_src\\\\solver\\\\645\\\\wntmsci8.pro\\\\inc\\\\stl;e:\\\\home\\\\kwart\\\\OOo\\\\devel2\\\\BuildDir\\\\ooo_cws_srx645_ooo112fix1_src\\\\solenv\\\\wntmsci8\\\\inc;e:\\\\home\\\\kwart\\\\OOo\\\\devel2\\\\BuildDir\\\\ooo_cws_srx645_ooo112fix1_src\\\\solenv\\\\inc;c:\\\\PROGRA~1\\\\MICROS~2\\\\include;e:\\\\MICROS~1.NET\\\\VC7\\\\include;c:\\\\j2sdk1.4.2_04\\\\include;c:\\\\j2sdk1.4.2_04\\\\include\\\\win32"
Created attachment 14562 [details] Try this patch for config_office/set_soenv.in, I hope it helps.
all: please review that patch. Our build does not need that library now with this patch applied, so it seems to fix this issue.
I cannot test a full build until tomorow with this patch. The test looks good by inspection, approved if a full (.NET2002) build builds without problems with this patch.
Fixed in cws_srx645_ooo112fix1. Please verify!
I confirm this fix (patch) in pt_PT localization. Now it's no longer needed the msvci70.dll
vd: thanks!
as verified, marking as such
Closing.
I try to use the patch on OOo 1.1.1src, I rebuild xmlhelp, deliver and then run dmake on win 2000 sp4, VC .net 2002 entreprise, tcsh, JDK 1.4.2_02, cygwin 1.5.9-1 but after finish build without any error. I install it on other machine (Win XP) and I got the "cannot register ucpchelp1.dll" error. is there any things I might be missing/forget ? Thanks
after trying again with only the second patch it works. it maybe conflict with 1st patch. so the patch is works. sorry and Thanks