[tor-bugs] #13419 [Tor Browser]: Fix cross-compiling ICU with mingw-w64 for Windows builds
Tor Bug Tracker & Wiki
blackhole at torproject.org
Thu Sep 17 13:56:44 UTC 2015
#13419: Fix cross-compiling ICU with mingw-w64 for Windows builds
-------------------------+-------------------------------------------------
Reporter: gk | Owner: gk
Type: task | Status: assigned
Priority: normal | Milestone:
Component: Tor | Version:
Browser | Keywords: tbb-gitian, TorBrowserTeam201509,
Resolution: | GeorgKoppen201509
Actual Points: | Parent ID:
Points: |
-------------------------+-------------------------------------------------
Comment (by mcs):
Replying to [comment:6 gk]:
> Do you have a bit more context? When does this happen?
It happens while building under /home/ubuntu/build/tor-browser/obj-
mingw/intl/icu/target/i18n/, while trying to link ../lib/icuin52.dll. I
ssh'd into the VM and grabbed the full command:
{{{
i686-w64-mingw32-g++ -mwindows -Wall -Wempty-body -Woverloaded-virtual
-Wsign-compare -Wwrite-strings -Wno-invalid-offsetof -Wcast-align -Wno-
format -fno-exceptions -fno-strict-aliasing -mms-bitfields -mstackrealign
-fno-keep-inline-dllexport -frtti -fno-exceptions -fno-math-errno
-std=gnu++0x -pipe -g -UDEBUG -DNDEBUG -O -W -Wall -pedantic -Wpointer-
arith -Wwrite-strings -Wno-long-long -Wno-unused -Wno-unused-parameter
-mthreads -specs=/home/ubuntu/build/msvcr100.spec -static -Wl,--enable-
stdcall-fixup -Wl,--large-address-aware -shared -Wl,-Bsymbolic -Wl
,--enable-auto-import -Wl,--out-implib=../lib/icuin.dll.a -o
../lib/icuin52.dll ucln_in.o fmtable.o format.o msgfmt.o umsg.o numfmt.o
unum.o decimfmt.o dcfmtsym.o ucurr.o digitlst.o fmtable_cnv.o choicfmt.o
datefmt.o smpdtfmt.o reldtfmt.o dtfmtsym.o udat.o dtptngen.o udatpg.o
nfrs.o nfrule.o nfsubs.o rbnf.o numsys.o unumsys.o ucsdet.o ucal.o
calendar.o gregocal.o timezone.o simpletz.o olsontz.o astro.o taiwncal.o
buddhcal.o persncal.o islamcal.o japancal.o gregoimp.o hebrwcal.o
indiancal.o chnsecal.o cecal.o coptccal.o dangical.o ethpccal.o coleitr.o
coll.o tblcoll.o sortkey.o bocsu.o ucoleitr.o ucol.o ucol_res.o ucol_bld.o
ucol_sit.o ucol_tok.o ucol_wgt.o ucol_cnt.o ucol_elm.o strmatch.o
usearch.o search.o stsearch.o translit.o utrans.o esctrn.o unesctrn.o
funcrepl.o strrepl.o tridpars.o cpdtrans.o rbt.o rbt_data.o rbt_pars.o
rbt_rule.o rbt_set.o nultrans.o remtrans.o casetrn.o titletrn.o tolowtrn.o
toupptrn.o anytrans.o name2uni.o uni2name.o nortrans.o quant.o transreg.o
brktrans.o regexcmp.o rematch.o repattrn.o regexst.o regextxt.o regeximp.o
uregex.o uregexc.o ulocdata.o measfmt.o currfmt.o curramt.o currunit.o
measure.o utmscale.o csdetect.o csmatch.o csr2022.o csrecog.o csrmbcs.o
csrsbcs.o csrucode.o csrutf8.o inputext.o wintzimpl.o windtfmt.o
winnmfmt.o basictz.o dtrule.o rbtz.o tzrule.o tztrans.o vtzone.o
zonemeta.o upluralrules.o plurrule.o plurfmt.o selfmt.o dtitvfmt.o
dtitvinf.o udateintervalformat.o tmunit.o tmutamt.o tmutfmt.o currpinf.o
uspoof.o uspoof_impl.o uspoof_build.o uspoof_conf.o uspoof_wsconf.o
decfmtst.o smpdtfst.o ztrans.o zrule.o vzone.o fphdlimp.o fpositer.o
locdspnm.o decNumber.o decContext.o alphaindex.o tznames.o tznames_impl.o
tzgnames.o tzfmt.o compactdecimalformat.o gender.o region.o scriptset.o
identifier_info.o uregion.o ../lib/icuuc.dll.a ../stubdata/icudt.dll.a -lm
}}}
After a little more poking around this morning, I think the above command
should be linking with the DLL (../lib/icuuc52.dll) instead of the static
lib (../lib/icuuc.dll.a). I am going to make that change to the lines I
suggested adding in comment:5 and see what happens. My revised additions
to intl/icu/source/config/mh-mingw are:
{{{
# Use correct names for import libraries.
# See https://trac.torproject.org/projects/tor/ticket/13419
LIBICUDT=
$(top_builddir)/stubdata/$(LIBICU)$(DATA_STUBNAME)$(ICULIBSUFFIX)$(IMPORT_LIB_EXT)
LIBICUUC=
$(LIBDIR)/$(LIBICU)$(COMMON_STUBNAME)$(ICULIBSUFFIX)$(SO_TARGET_VERSION_MAJOR).$(SO)
$(LIBICUDT)
}}}
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/13419#comment:7>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
More information about the tor-bugs
mailing list