Bug Hunting Session
Bug 68756 - no startup any more: msvcr100.dll not found, after 4.1.0 --> 4.1.1 upgrade on Windows
Summary: no startup any more: msvcr100.dll not found, after 4.1.0 --> 4.1.1 upgrade on...
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Installation (show other bugs)
Version:
(earliest affected)
4.1.1.2 release
Hardware: x86 (IA32) Windows (All)
: medium blocker
Assignee: Christian Lohmaier
URL:
Whiteboard: target:4.1.2.1
Keywords:
: 68796 69630 (view as bug list)
Depends on:
Blocks: mab4.1
  Show dependency treegraph
 
Reported: 2013-08-30 14:24 UTC by real name
Modified: 2013-11-06 14:24 UTC (History)
7 users (show)

See Also:
Crash report or crash signature:


Attachments
Version of library (13.92 KB, image/png)
2013-09-04 05:36 UTC, ape
Details

Note You need to log in before you can comment on or make changes to this bug.
Description real name 2013-08-30 14:24:42 UTC
upgraded (installed via .msi files both help and main) from 4.1.0 to 4.1.1 and libreoffice main shortcut doesnt open any more, it quickly gives an error report that msvcr100.dll is lacking.

i dont know if 4.1.0 was already using that dll, i actually have it in several places on this win2003 server (x86) machine (e.g. in mozilla firefox 23 directory) but why the heck did an upgrade cause this error or what *IS* wrong here? :(

the previous libreoffice 4.1.0 was working fine on this very machine.

sigh.
Comment 1 yves.poinas 2013-08-31 12:22:25 UTC
Same issue with LibreOffice_4.1.1_Win_x86.msi installation on my computer.
Comment 2 bfoman (inactive) 2013-09-01 19:30:08 UTC
*** Bug 68796 has been marked as a duplicate of this bug. ***
Comment 3 tommy27 2013-09-01 19:59:09 UTC
changing status to NEW according to confirmation in Comment 1.
adding Windows installer expert in CC list.

I see this as a potential 4.1 MAB.
Comment 4 tommy27 2013-09-03 05:32:01 UTC
@real name @yves
one info please. did you install 4.1.1 over 4.1.0 or did you uninstall 4.1.0 before installing 4.1.1?

have you tried a clean install of 4.1.1 on another computer with no existing LibO version installed? do you still face this issue?
Comment 5 Michael Meeks 2013-09-03 06:43:31 UTC
This sounds horrible; Andras / Christian - any thoughts ? :-) surely we are distributing: msvcr100.dll ?
Comment 6 ape 2013-09-03 08:07:42 UTC
I can’t repeat this bug in the Windows XP 64-bit. This is NT 5.2 too. The same error was in a Master-LibO_4.2.0 between the 13rd and 21st of August, but with MS VCR 2012 (msvcr110.dll and msvcp110.dll).
--
Questions to the author:
1. Does the package MS_VCR_2010 is installed in the operating system?
2. Have removed the 64-bit DLL files after you install the LibO-4.1.1?
Comment 7 ape 2013-09-03 08:12:44 UTC
I can’t repeat this bug in the Windows XP sp3 RUS (NT 5.1) too.
Comment 8 Dietmar 2013-09-03 11:41:24 UTC
I can confirm this bug on a clean installation on WinXP german
Comment 9 real name 2013-09-03 11:43:37 UTC
I am normally always upgrading from one installed version directly to the next via the microsoft msi packages the libreoffice download page provides. no uninstall.

this win2003server was running libreoffice 4.x fine for a long time now. dont know why this latest messed up the DLLs it needs.
Comment 10 tommy27 2013-09-03 11:56:12 UTC
(In reply to comment #8)
> I can confirm this bug on a clean installation on WinXP german

3rd user confirming this bug on different Windows versions (Win2003 server, Win7 and WinXP). added to MAB 4.1 list.
Comment 11 Andras Timar 2013-09-03 12:34:12 UTC
This is a build server issue. I bet that 4.1.1 was not built in the same environment as 4.1.0. 

msvcr100.dll version in official 4.1.0.4 is 10.0.40219.325
msvcr100.dll version in official 4.1.1.2 is 10.0.40219.1

Installer will not downgrade msvcr100.dll, so 10.0.40219.1 will not be selected for installation. On the other hand, uninstallation rule will remove 10.0.40219.1, so we end up with no msvcr100.dll. 

I recommend that all build servers use the latest available version of Microsoft_VC100_CRT_x86.msm.
Comment 12 Andras Timar 2013-09-03 12:39:55 UTC
(In reply to comment #11)
> uninstallation rule will remove 10.0.40219.1

Correction: uninstallation rule will remove 10.0.40219.325 (from 4.1.0)
Comment 13 Andras Timar 2013-09-03 13:08:54 UTC
I remembered that I encontered this issue earlier. Finally I found it in my mailbox, it was a bug from Novell's Bugzilla. Anyway, Microsoft Visual Studio 2010 Service Pack 1 MFC Security Update should be installed on all build servers from http://www.microsoft.com/en-us/download/details.aspx?id=27049
Comment 14 Christian Lohmaier 2013-09-03 14:30:40 UTC
Andras is right: The builds were not performed on the same machines.
Also thanks for tracking down what is wrong.

The version 10.0.40219.1 is what you get when installing Visual Studio 2010 SP1 and all its updates via windows update (when updates for windows and other programs is activated)

Thanks for the pointer, will download and see whether that solves the problem.

I wonder why this is not offered via windows update though.
Comment 15 tommy27 2013-09-03 15:59:00 UTC
is that issue x86 specific or it may affect x64 systems as well?

P.S. I did small edits to summary notes
Comment 16 yves.poinas 2013-09-03 18:09:22 UTC
(In reply to comment #15)
> is that issue x86 specific or it may affect x64 systems as well?
> 
> P.S. I did small edits to summary notes

My machine is x64.
Comment 17 ape 2013-09-03 20:00:40 UTC
(In reply to comment #15)
> is that issue x86 specific or it may affect x64 systems as well?
> 
> P.S. I did small edits to summary notes

1. comment 6:  The same error was in a Master-LibO_4.2.0 between the 13rd and 21st of August, but with MS VCR 2012 (msvcr110.dll and msvcp110.dll).

2. In theory, the libraries are not needed, because they already exist in the «${ORIGIN}\program\shlxthdl\..» folder. For comparison: the “LibO-dev 4.2.0.0” runs in the my Windows XP 64-bit, although the MSVCR-2012 package is not installed.
 The problem is which algorithm used for search the path to MSVCR libraries. I think that if the “soffice.bin” program was searching libraries into «${ORIGIN}\program\shlxthdl\..» folder then error would not be. Most likely, the program searches libraries previously into the system's (%windir%\system32\..) folder. Therefore, the error message appears periodically.
Comment 18 tommy27 2013-09-04 03:35:18 UTC
(In reply to comment #16)
> (In reply to comment #15)
> > is that issue x86 specific or it may affect x64 systems as well?
> > 
> My machine is x64.

yves, thanks for info. removed x86 from summary.

has anybody of the bug reporters tried to run the portable version?
here's the link: http://sourceforge.net/projects/winpenpack/files/X-LibreOffice/releases/X-LibreOffice_4.1.1_rev16.zip/download

it would be interesting to know if such .dll troubles affects only the standard installation package or even the no-install version.
Comment 19 ape 2013-09-04 04:49:35 UTC
(In reply to comment #18)
> has anybody of the bug reporters tried to run the portable version?
> here's the link:
> http://sourceforge.net/projects/winpenpack/files/X-LibreOffice/releases/X-
> LibreOffice_4.1.1_rev16.zip/download
--
I looked over the program. This is a difficult option:
1. Enough to fix "UserInstallation=$SYSUSERCONFIG/LibreOffice/4" (the file "bootstrap.ini") to "UserInstallation=${ORIGIN}/..", so the program has been portable.
2. The “msvcp100.dll” and “msvcr100.dll” files must be copied to the folder "${ORIGIN}/program/.." and "${ORIGIN}/URE/bin/.." from the folder "${ORIGIN}/program/shlxthdl/.." if the “LibO_Portable 4.1” program does not start because of the lack of libraries MSVCR.
Comment 20 tommy27 2013-09-04 05:01:15 UTC
@ape
thanks for your tests. so basically you see some .dll issues in the portable version as well?

I've experience some issues indeed with X-LibO 4.1.1 on a Win7 64bit PC (the launcher does not start the application and stays unresponsive) while the same package runs with no issue on other 2 PCs (another Win7 64bit and a WinXP 32bit machine)... so I suspect some missing .dll trouble on the first PC.
Comment 21 Andras Timar 2013-09-04 05:02:40 UTC
(In reply to comment #17)
> 1. comment 6:  The same error was in a Master-LibO_4.2.0 between the 13rd
> and 21st of August, but with MS VCR 2012 (msvcr110.dll and msvcp110.dll).

That's a different story, that Tinderbox uses VS 2012 instead of VS 2010.

> 
> 2. In theory, the libraries are not needed, because they already exist in
> the «${ORIGIN}\program\shlxthdl\..» folder. 

No, «${ORIGIN}\program\shlxthdl\..» folder contains 64-bit VC runtime, because 64-bit shell extensions need it. LibreOffice is a 32-bit application.
Comment 22 ape 2013-09-04 05:36:24 UTC
Created attachment 85167 [details]
Version of library

@ Andras (last comment):
Strange. Both libraries have the same version - 10.00.40219.325
Properties file in the "\program\shlxthdl" folder are shown on the left.
Properties file in the "\%windir%\system32" NT-5.2_64-bit folder are shown on the right.
ape
Comment 23 tommy27 2013-09-04 06:51:24 UTC
I have an additional info that may be related to the present .dll bug 
with LibO 4.1.1

I tested the portable version (X-LibO 4.1.1 - see link in Comment 18) on 
3 different PCs.

it runs with no issue if there's a concurrent installation of 4.2 alpha 
(31 august build) while it doesn't start if no standard LibO 
installation is present.

I suspect that the faulty .dll of 4.1.1 is not enough to run X-LibO alone, instead the .dll shipped and installed with 4.2alpha make work X-LibO as well.
Comment 24 ape 2013-09-04 07:21:47 UTC
(In reply to comment #21)
> (In reply to comment #17)
> > 1. comment 6:  The same error was in a Master-LibO_4.2.0 between the 13rd
> > and 21st of August, but with MS VCR 2012 (msvcr110.dll and msvcp110.dll).
> 
> That's a different story, that Tinderbox uses VS 2012 instead of VS 2010.
> 
> > 
> > 2. In theory, the libraries are not needed, because they already exist in
> > the «${ORIGIN}\program\shlxthdl\..» folder. 
> 
> No, «${ORIGIN}\program\shlxthdl\..» folder contains 64-bit VC runtime,
> because 64-bit shell extensions need it. LibreOffice is a 32-bit application.
--
Andras,
 please read my comment 22 and look attachment 85167 [details]. «${ORIGIN}\program\shlxthdl\..» folder contains 32-bit VC runtime (msvcp100.dll_x32: size - 593 KB or 608080 bytes). I think so, because the “msvcp100.dll” 64-bit library (ver. 10.00.40219.325) has a different size in 411 KB (421200 bytes).
Comment 25 ape 2013-09-06 20:40:17 UTC
Hi, all
 The MSVCR-2010 package is not installed on one of my computers with Windows XP 64-bit Edition. But the program starts and runs fine on this iron.
 Most likely, this error is the result of specific features of the operating system. I think that bug cannot have the status of "blocking".
--
ape
Comment 26 Christian Lohmaier 2013-09-07 18:44:16 UTC
As it is a build-system problem, I set this issue to fixed, as I have installed the necessary package on the buildhost.

The problem again summarized as follows:
* Only occurs when updating, since update works as follows:
* Install new files, then remove the old ones.
Problem:
# 4.1.1 contained a dll that is older than that of previous versions, so it is not installed
# despite the dll not being installed, the old copy is removed

→ result: On the updated system the dll is missing.

There is no problem if you:
* Install LibreOffice for the first time
or
* Deinstall old version, then install new version (in two steps)
* Have the dll installed into window's system directory by installation of a non-LibreOffice package (like for example the standalone version of the Visual Studio Runtimes from Microsoft).

Any problem that does not match this description is different and needs a separate bug report
Comment 27 tommy27 2013-09-21 20:44:48 UTC
*** Bug 69630 has been marked as a duplicate of this bug. ***
Comment 28 Matthieu 2013-11-06 13:15:22 UTC
Hello,

I have the bug in my own install after a 4.0.6 build
The problem is: There is not msvcr100.dll in «${ORIGIN}\program\shlxthdl\..» folder

I have the DLL in sources\libro-core\wntmsci13.pro\bin

Where is the process to copy msvcr100 in shlxthdl directory?
Comment 29 Michael Meeks 2013-11-06 13:55:13 UTC
Hi Matthieu - is that a self-built package ? if so, I guess your build-system is not setup correctly either; it'd be -really- nice to have a unit test in our Windows build to catch this one: otherwise it will just come back for ourselves & others over time :-)
Comment 30 Matthieu 2013-11-06 14:24:07 UTC
Yes it's a self build package.

First when I install visualstudio 2010 my directory Microsoft Visual Studio 10.0\VC\redist\x86\Microsoft.VC100.CRT was not there.

I have to create it and fill it with the DLL -> this is probably due to my VS install.

Now in <source>/external, after building, I don't have the same content as http://cgit.freedesktop.org/libreoffice/core/tree/external?id=315c31721ac849e201d5f5c9097226306a7a1c00&h=libreoffice-4-0-6

I think this commit would resolved my problem

http://cgit.freedesktop.org/libreoffice/core/commit/?id=9a6d5f15afa16e68d38e4a0cfd5ef904be481a17