http://bugs.winehq.org/show_bug.cgi?id=19783
Summary: Visual C++ 2005 Express: building Firefox: mt.exe crashes while linking mkdepend Product: Wine Version: 1.1.27 Platform: PC OS/Version: Linux Status: NEW Keywords: download Severity: normal Priority: P2 Component: kernel32 AssignedTo: wine-bugs@winehq.org ReportedBy: dank@kegel.com
To reproduce the first time:
First, get the tools and source code. The scripts run on Windows - that's why they use cygwin! - but I'll show how to run them on Wine here.
wget http://kegel.com/wine/vc2005x.sh wget http://kegel.com/wine/firefox-download-and-build.sh wget http://winezeug.googlecode.com/svn/trunk/winetricks sh winetricks -q dotnet20 msxml6 cygwin
In the cygwin setup dialog, select cabextract, wget, and mercurial.
sh vc2005x.sh sh firefox-download-and-build.sh
Then start a wineconsole (so msys doesn't explode): cd ~/.wine/drive_c/mozilla-build wineconsole cmd
Then inside that wineconsole, start a mozilla msys bash shell with visual C/mozilla env settings:
start-msvc8-wine.bat
And inside *that*, cd to the source directory and do the build: $ cd /c/demo/firefox-191src $ make -f client.mk
This will churn happily for about 20 minutes before it bumps into a real need for mt.exe, and then crash:
make[1]: Entering directory `/c/demo/firefox-191src/ff-dbg/config/mkdepend' link -NOLOGO -OUT:mkdepend.exe -PDB:mkdepend.pdb host_cppsetup.obj host_ifparser.obj host_include.obj host_main.obj host_parse.obj host_pr.obj ... 0037:Call KERNEL32.BeginUpdateResourceW(00158e30 L"C:\demo\firefox-191src\ff-dbg\config\mkdepend\mkdepend.exe",00000000) ret=01051d26 0037:Ret KERNEL32.BeginUpdateResourceW() retval=0014d8e2 ret=01051d26 0037:Call KERNEL32.UpdateResourceW(0014d8e2,00000018,00000001,00000409,0015c318,00000152) ret=01051d76 0037:Ret KERNEL32.UpdateResourceW() retval=00000001 ret=01051d76 0037:Call KERNEL32.EndUpdateResourceW(0014d8e2,00000000) ret=01051db0 trace:seh:raise_exception code=c0000005 flags=0 addr=0x7ee22a14 ip=7ee22a14 tid=0037 ... Unhandled exception: page fault on read access to 0xcd4eb404 in 32-bit code (0x7ee22a14). Backtrace: =>0 0x7ee22a14 write_raw_resources+0x454(updates=0x13b4b0) [dlls/kernel32/resource.c:1038] in kernel32 (0x0033f8b8) 1 0x7ee23969 EndUpdateResourceW+0xf9(hUpdate=0x13b492, fDiscard=0) [dlls/kernel32/resource.c:1635] in kernel32 (0x0033f8e8) 2 0x01051db0 in mt (+0x51db0) (0x0033f8f8) ... 0x7ee22a14 write_raw_resources+0x454 [dlls/kernel32/resource.c:1038] in kernel32: movl 0x4(%eax),%edx 1038 p = address_from_rva( base, mapping_size, data->OffsetToData, data->Size );
To reproduce quickly after initial run:
cd ~/.wine/drive_c/mozilla-build wineconsole cmd
In wineconsole: start-msvc8-wine.bat cd /c/demo/firefox-191src/ff-dbg/config make
(You can set WINEDBUG when running make; the output will come out on the terminal where you started wineconsole.)