Error when building Thunderbird/SeaMonkey: FileWriteWord is only available when building a Unicode installer (regression)

RESOLVED FIXED in Thunderbird 32.0

Status

defect
RESOLVED FIXED
5 years ago
4 years ago

People

(Reporter: aryx, Assigned: rstrong)

Tracking

({regression})

Trunk
Thunderbird 32.0
x86_64
Windows 8.1
Dependency tree / graph

Thunderbird Tracking Flags

(thunderbird_esr3132+ fixed)

Details

Attachments

(1 attachment)

Windows 8.1 Pro 64 bit with Microsoft Visual Studio 2010

Building Thunderbird failed with

 2:23.22 Processing config: c:\Mozilla\Coding\Buildtools\MozillaBuild\nsis-3.0a2\nsisconf.nsh
 2:23.23 Processing script file: "uninstaller.nsi" (ACP)
 2:23.49 Error: FileWriteWord is only available when building a Unicode installer
 2:23.49 Error in macro initShortcutsLog on macroline 5
 2:23.49 Error in macro LogShortcut on macroline 16
 2:23.49 Error in macro LogDesktopShortcut on macroline 3
 2:23.49 Error in macro _LoggingShortcutsCommon on macroline 1
 2:23.49 Error in script "uninstaller.nsi" on line 63 -- aborting creation process
 2:23.50 c:/Mozilla/Coding/Code/comm-central/mozilla/toolkit/mozapps/installer/windows/nsis/makensis.mk:88: recipe for target 'uninstaller' failed
 2:23.50 mozmake.EXE[5]: *** [uninstaller] Error 1
 2:23.50 Makefile:35: recipe for target 'libs' failed
 2:23.50 mozmake.EXE[4]: *** [libs] Error 2
 2:23.50 c:/Mozilla/Coding/Code/comm-central/mozilla/config/recurse.mk:153: recipe for target 'libs' failed
 2:23.50 mozmake.EXE[3]: *** [libs] Error 2
 2:23.50 c:/Mozilla/Coding/Code/comm-central/mozilla/config/rules.mk:592: recipe for target 'default' failed
 2:23.50 mozmake.EXE[2]: *** [default] Error 2
 2:23.50 Makefile:52: recipe for target 'default' failed
 2:23.50 mozmake.EXE[1]: *** [default] Error 2
 2:23.50 client.mk:391: recipe for target 'build' failed
 2:23.50 mozmake.EXE: *** [build] Error 2

According to Paenglab, this is a MozillaBuild regression:

Paenglab: Archaeopteryx2: I'm seeing the same with latest mozilla-build. My workaround is using for a full build the 1.9pre and then switch to the latest for the incremental builds. Maybe we should ask in #build.
Archaeopteryx2: oh, works in 1.9pre?
Paenglab: Archaeopteryx2: JosiahOne had the same problem on Win8 VM.
flo-retina [Instantbir@moz-87C33FDA.kimsufi.com] entered the room.
Paenglab: Archaeopteryx2: Yep, but needs a clobber. A already failed build fails with the same error.

Building Firefox fails with a different error message:

 9:14.30 ALL_CFU_SOURCE: c:/Mozilla/Coding/Code/mozilla-central/intl/icu/source/data/unidata/confusables.txt c:/Mozilla/Coding/Code/mozilla-central/intl/icu/source/data/unidata/confusablesWholeScript.txt
 9:14.31 CFU_FILES: ./out/build/icudt52l/confusables.cfu
 9:14.33 CFU_FILES_SHORT: confusables.cfu
 9:14.36 gencfu writes dummy out/build/icudt52l/confusables.cfu because of UCONFIG_NO_REGULAR_EXPRESSIONS and/or UCONFIG_NO_NORMALIZATION and/or UCONFIG_NO_FILE_IO, see uconfig.h
 9:14.37 generating out/tmp/icudata.lst (list of data files)
 9:15.26    Bibliothek "../lib/icudt.lib" und Objekt "../lib/icudt.exp" werden erstellt.
 9:15.28 genccode: --match-arch cpu=332 bits=32 big-endian=0
 9:15.28 pkgdata: link.exe /nologo /release /out:"../lib/icudt52.dll" /DLL /NOENTRY /MANIFEST:NO  /base:0x4ad00000 /implib:"../lib/icudt.lib" "./out/tmp\icudt52l_dat.obj" "./out/tmp/icudata.res"
 9:15.32 Note: rebuild with "c:/Mozilla/Coding/Buildtools/MozillaBuild/mozmake/mozmake.EXE VERBOSE=1 all-local" to show all compiler parameters.
 9:15.40 c:/Mozilla/Coding/Code/mozilla-central/config/recurse.mk:39: recipe for target 'compile' failed
 9:15.40 mozmake.EXE[3]: *** [compile] Error 2
 9:15.40 c:/Mozilla/Coding/Code/mozilla-central/config/rules.mk:592: recipe for target 'default' failed
 9:15.40 mozmake.EXE[2]: *** [default] Error 2
 9:15.40 c:/Mozilla/Coding/Code/mozilla-central/client.mk:398: recipe for target 'realbuild' failed
 9:15.40 mozmake.EXE[1]: *** [realbuild] Error 2
 9:15.40 client.mk:185: recipe for target 'build' failed
 9:15.40 mozmake.EXE: *** [build] Error 2
Keywords: regression
Summary: FileWriteWord is only available when building a Unicode installer → Error when building Thunderbird: FileWriteWord is only available when building a Unicode installer (regression)
Builds fail only locally, pushes to Thunderbird-Try (and Try) get built.
Any ideas, Rob?
Flags: needinfo?(robert.strong.bugs)
Component: MozillaBuild → Installer
Flags: needinfo?(robert.strong.bugs)
Product: mozilla.org → Thunderbird
Version: other → Trunk
Posted patch patchSplinter Review
This patch should fix it but I don't have time to drive this into the tree. Also, the errors reported building Firefox are unrelated to the nsis failure.
Bug 962381 is where this was implemented for Firefox.
Also, I didn't think those changes would affect Thunderbird or Seamonkey since c-c used to have its own configure.in that detected the nsis version and now it is using the one from m-c.
Summary: Error when building Thunderbird: FileWriteWord is only available when building a Unicode installer (regression) → Error when building Thunderbird/SeaMonkey: FileWriteWord is only available when building a Unicode installer (regression)
Thanks for the patch!
Comment on attachment 8415405 [details] [diff] [review]
patch

I think I know enough about NSIS installer to r+ this. Patch works fine for SeaMonkey and Thunderbird installer. The NSIS_PACKEDVERSION check should be ok as the first version with NSIS_PACKEDVERSION support will be NSIS 3.0 as it looks like. Other changes are ok, too.
Attachment #8415405 - Flags: review?(standard8) → review+
https://hg.mozilla.org/comm-central/rev/49c168fc8c53
Status: NEW → RESOLVED
Closed: 5 years ago
Keywords: checkin-needed
Resolution: --- → FIXED
Target Milestone: --- → Thunderbird 32.0
Is there a plan to land this in tb 31? Otherwise people trying to build released tb 31 will be hitting this, and have to backport that patch manually (as I just did)
I guess tb 31 source is frozen already, but "Target Milestone: --- → Thunderbird 32.0" is not what everybody wants too see here. 31.0.1 should be better.
As for me, applied patch by myself :), and got it built.
Assignee: nobody → robert.strong.bugs
Comment on attachment 8415405 [details] [diff] [review]
patch

[Approval Request Comment]
Regression caused by (bug #): 962381 
User impact if declined: build fails if you have the wrong NSIS version
Testing completed (on c-c, etc.): baked on trunk for quite some time
Risk to taking this patch (and alternatives if risky): low
Attachment #8415405 - Flags: approval-comm-release?
Comment on attachment 8415405 [details] [diff] [review]
patch

Moving to the newly created flag.
Attachment #8415405 - Flags: approval-comm-release? → approval-comm-esr31?
I am getting the similier error below. 

It is related? 

16:43.06 c:/mozilla-source/config/recurse.mk:39: recipe for target 'compile' fai
led
16:43.06 mozmake.EXE[3]: *** [compile] Error 2
16:43.06 c:/mozilla-source/config/rules.mk:592: recipe for target 'default' fail
ed
16:43.06 mozmake.EXE[2]: *** [default] Error 2
16:43.06 c:/mozilla-source/client.mk:398: recipe for target 'realbuild' failed
16:43.06 mozmake.EXE[1]: *** [realbuild] Error 2
16:43.06 client.mk:185: recipe for target 'build' failed
16:43.06 mozmake.EXE: *** [build] Error 2
16:43.12 255 compiler warnings present.
No, looks like a different bug. You should file a new bug report for this, but I think you forgot to copy the actual error message. It should be higher up in the log (probably a few lines). The log snippet you pasted does not quote the actual problem/error message (e.g. compare with Comment 0 where the actual error message in my case starts).
Attachment #8415405 - Flags: approval-comm-esr31? → approval-comm-esr31+
Hi all,

           I am getting the following error, while i compiling mozilla-central. Please give me a solution for this..

95:31.88 host_crctable.obj
95:32.63 crctable.c
95:32.65 host_decompress.obj
95:34.21 decompress.c
95:34.23 host_huffman.obj
95:35.04 huffman.c
95:35.05 host_randtable.obj
95:36.04 randtable.c
95:36.05 hostbz2.lib
95:36.91 c:/mozilla-central.hg/config/recurse.mk:32: recipe for target 'compile'
 failed
95:36.91 mozmake.EXE[3]: *** [compile] Error 2
95:37.34 c:/mozilla-central.hg/config/rules.mk:538: recipe for target 'default'
failed
95:37.35 mozmake.EXE[2]: *** [default] Error 2
95:37.49 c:/mozilla-central.hg/client.mk:400: recipe for target 'realbuild' fail
ed
95:37.50 mozmake.EXE[1]: *** [realbuild] Error 2
95:37.58 client.mk:171: recipe for target 'build' failed
95:37.58 mozmake.EXE: *** [build] Error 2
95:37.94 266 compiler warnings present.
Arun, for build issues ask in the mozilla.dev.builds group
https://groups.google.com/forum/#!forum/mozilla.dev.builds
You need to log in before you can comment on or make changes to this bug.