Closed Bug 529169 Opened 16 years ago Closed 15 years ago

compile Fennec win32 desktop builds with VS8

Categories

(Release Engineering :: General, defect, P2)

x86
Windows XP
defect

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: darya.botova, Assigned: mozilla)

References

Details

Attachments

(4 files)

User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.5) Gecko/20091102 Firefox/3.5.5 (.NET CLR 3.5.30729) Build Identifier: 20091116022232 There is an error when run Fennec because MSVCR80.dll was not found. But browser works. Reproducible: Always Steps to Reproduce: 1.Run Fennec 2. 3. Actual Results: There is a message window "Unable To Locate Component" -This application has failed to start because MSVCR80.dll was not found. Re-installing the application may fix this problem.-
Please, delete it...
This happens on windows desktop builds and they are not supported by the development team. Unfortunately, this will not be fixed. Thank you for filing a bug on this. It was much appreciated.
Status: UNCONFIRMED → RESOLVED
Closed: 16 years ago
Resolution: --- → INVALID
Status: RESOLVED → VERIFIED
no, we need to fix this.
Status: VERIFIED → UNCONFIRMED
Resolution: INVALID → ---
Status: UNCONFIRMED → NEW
Ever confirmed: true
You probably either need to: a) --enable-jemalloc (which ships our own CRT) b) set WIN32_REDIST_DIR=/path/to/redist/x86/Microsoft.VC80.CRT (usually something like C:\Program Files\Microsoft Visual Studio 8\VC\redist\x86\Microsoft.VC80.CRT, but probably different on the slaves) We might also need the same fix as bug 528903 for xulrunner/stub/Makefile.in.
no, it didn't help
Used the Prism patch as the base for this. We're just turning off use of static libs for building the xulrunner stub, which allows proper dynamic linking to happen with recent MSVC libraries.
Assignee: nobody → combee
Status: NEW → ASSIGNED
Attachment #418417 - Flags: review?(mark.finkle)
bug 528903 is the related issue with prism for future reference
Attachment #418417 - Flags: review?(mark.finkle) → review+
tracking-fennec: --- → ?
Comment on attachment 418417 [details] [diff] [review] turn off static linking for xulrunner stub USE_STATIC_LIBS is correct, at least in the jemalloc builds that we ship by default.
Attachment #418417 - Flags: review-
That is, the stub will now search for the "special mozilla libc" which is likely not present in the search path.
Benjamin, jemalloc doesn't work for Win32 debug builds, so when building without it, you get the problem seen in this bug.
Ben Combee, maybe we should use some jemalloc makefile flags to set/not-set the USE_STATIC_LIBS
Is this a local build where you get the error, or are you packaging up a debug build and running it on a different machine? If the former, the MSVC8 libraries should be installed in the system path. Perhaps some of the former weirdness we did looking for the CRT files in the local install directory should be un-done. In either case this patch is incorrect in the release case (xulrunner+jemalloc), which is the most important one.
It is with a local build, but users have also complained on Fennec 1.9.2 nightlies for Win32.
Oh, and I've tried adding various libraries to system path on my own system without any success.
Stuart says enabling jemalloc (along with https://bugzilla.mozilla.org/show_bug.cgi?id=518910#c4 ) will fix this.
Attachment #419697 - Flags: review?(pavlov)
Attachment #419697 - Flags: review?(pavlov) → review+
This may fix it for our nightly releases, but jemalloc + Win debug build is broken IIRC.
I verified that --enable-jemalloc fixes the problem, but jemalloc requires a SP1 of VS2008 which isn't on the build machines...
Assignee: combee → nobody
Component: General → Release Engineering
Product: Fennec → mozilla.org
QA Contact: general → release
Version: Trunk → other
Summary: Unable to locate msvcr80.dll → Install vs9 sp1 on win32 build slaves
Status: ASSIGNED → NEW
Priority: -- → P3
AIUI --enable-jemalloc requires VS2005 SP1, rather than VS2008. Did that change ?
This continues to block desktop win32 fennec builds, but there is a manual workaround for now (Stuart doing on his machines). Unknown how easy/hard to roll out using OPSI. Moving to Future until after we spin up the new hardware and can revisit.
Component: Release Engineering → Release Engineering: Future
nthomas: bug 416117 fixed --enable-jemalloc to work with VS2008 SP1.
any ETA on this?
The fastest way to having win32 desktop Fennec builds would probably be to back out the --enable-jemalloc. Otherwise [I think] it's a matter of a) download correct sp1 b) generate opsi package that will install vs9 sp1 automatically c) test on staging; if paranoid test winmo builds on said box d) enable on production opsi server e) roll out to 60?+ win32 slaves while they're not building/running tests which, even if we assign someone to work on this immediately, probably won't happen by the end of the week. However, once this is done, new win32 slaves will have vs9 sp1 installed by default.
Mass move of bugs from Release Engineering:Future -> Release Engineering. See http://coop.deadsquid.com/2010/02/kiss-the-future-goodbye/ for more details.
Component: Release Engineering: Future → Release Engineering
jemalloc should build with either vs9sp1 or our current vs8 setup. Since there is a greater lead time to create an sp1 opsi package, and there isn't a specific reason we're using vs9 instead of vs8 to build win32 fennec desktop builds, downgrading seems like an expedient solution.
Summary: Install vs9 sp1 on win32 build slaves → compile Fennec win32 desktop builds with VS8
Assignee: nobody → aki
Priority: P3 → P2
The compile worked once I renamed mozilla-build/vim/vim72/install.exe to viminstall.exe. However, make package then failed with: xulrunner/xulrunner.exe Linking XPT files... Stripping package directory... signing nss libraries /bin/sh: ../../dist/bin/shlibsign: No such file or directory /bin/sh: ../../dist/bin/shlibsign: No such file or directory Rebasing ../../dist/fennec /bin/find ../../dist/fennec -name "*.dll" -a -not -name "MSVC*" | sort | xargs rebase -b 60000000 REBASE: Total Size of mapping 0x0000000001490000 REBASE: Range 0x0000000060000000 -0x0000000061490000 make[2]: Leaving directory `/e/builds/moz2_slave/w32mob-trunk-nightly/mozilla-central/objdir/mobile/mobile/installer' make[1]: Leaving directory `/e/builds/moz2_slave/w32mob-trunk-nightly/mozilla-central/objdir/mobile/mobile/installer' make[2]: *** [stage-package] Error 123 make[1]: *** [all] Error 2 make: *** [package] Error 2
Ok, the above is an m-c bug. This worked on m-1.9.2.
Attachment #427481 - Flags: review?(nrthomas)
yay removing code
Attachment #427482 - Flags: review?(nrthomas)
Attachment #427481 - Flags: review?(nrthomas) → review+
Attachment #427482 - Flags: review?(nrthomas) → review+
Status: NEW → RESOLVED
Closed: 16 years ago15 years ago
Resolution: --- → FIXED
Hitting the same vim/install.exe issue, since I only renamed it on staging slaves. Looks like we need to choose a solution out of - rename the mozilla-build\vim72\vim\install.exe on all production slaves + opsi - use nsinstall instead of install ? (possible?) - change the path - something else
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
(In reply to comment #30) > Hitting the same vim/install.exe issue, since I only renamed it on staging > slaves. Looks like we need to choose a solution out of > > - rename the mozilla-build\vim72\vim\install.exe on all production slaves + > opsi There's already a package to do this on bug 541953.
win32 fennec 1.9.2 nightly just went green.
Status: REOPENED → RESOLVED
Closed: 15 years ago15 years ago
Resolution: --- → FIXED
Blocks: 550023
Product: mozilla.org → Release Engineering
tracking-fennec: ? → ---
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: