[Wine]MFC compile problem

=?gb2312?B?tPfP/rar?= ken at magicunix.com
Sun Sep 19 21:11:03 CDT 2004


HI ALL:
I can not compile MFC successfully due to the resource file 'afxres.rc'. Can you give some suggestions to solve this problem or share your experience
on compiling MFC? Thank you. 

version of OS:
[ken at Linux80 mfc]$ uname -a 
Linux Linux80 2.4.18-14 #1 Wed Sep 4 12:13:11 EDT 2002 i686 athlon i386 GNU/Linux

version of MFC source is the MFC version released with VC 6.0

I compiled it with following steps:
1 upload MFC source code to£º
/home/ken/.wine/drive_c/mfc

upload VC include file to:
/home/ken/.wine/drive_c/VC_Include

2  winemaker --interactive  --lower-uppercase .
Winemaker 0.6.0
Copyright 2000 Francois Gouget <fgouget at codeweavers.com> for CodeWeavers
Scanning the source directories...

*** In src/
* winemaker found the following list of (potential) targets
*   mfcisapi mfcdll mfcintl mfcdb mfcnet mfcole
* Type enter to use it as is, your own comma-separated list of
* targets, 'none' to assign the source files to a parent directory,
* or 'ignore' to ignore everything in this directory tree.
* Target list:
* Type any project-wide options (-D/-I/-P/-i/-L/-l/--mfc),
* (currently mfc)
* or 'skip' to skip the target specific options,
* or 'never' to not be asked this question again:
-I/home/ken/.wine/drive_c/VC_Include -I/home/ken/.wine/drive_c/mfc/Include

* Specify any link option (-P/-i/-L/-l/--mfc) specific to the target
* "mfcole" (mfc) or 'never' to not be asked this question again:

* Specify any link option (-P/-i/-L/-l/--mfc) specific to the target
* "mfcnet" (mfc) or 'never' to not be asked this question again:

* Specify any link option (-P/-i/-L/-l/--mfc) specific to the target
* "mfcisapi" (mfc) or 'never' to not be asked this question again:

* Specify any link option (-P/-i/-L/-l/--mfc) specific to the target
* "mfcintl" (mfc) or 'never' to not be asked this question again:

* Specify any link option (-P/-i/-L/-l/--mfc) specific to the target
* "mfcdll" (mfc) or 'never' to not be asked this question again:

* Specify any link option (-P/-i/-L/-l/--mfc) specific to the target
* "mfcdb" (mfc) or 'never' to not be asked this question again:

Fixing the source files...
  Include/afxctl.rc
  Include/afxdb.rc
  Include/afxisapi.rc
  Include/afxolecl.rc
  Include/afxolesv.rc
  Include/afxprint.rc
  Include/afxres.rc
  Include/afx.h
  Include/afx.inl
  Include/afxadv.h
  Include/afxcoll.h
  Include/afxcom_.h
  Include/afxconv.h
  Include/afxctl.h
  Include/afxcview.inl
  Include/afxdb.h
  Include/afxdb.inl
  Include/afxdb_.h
  Include/afxcmn.h
  Include/afxdd_.h
  Include/afxdisp.h
  Include/afxdlgs.h
  Include/afxdlgs.inl
  Include/afxdll_.h
  Include/afxdocob.h
  Include/afxext.inl
  Include/afxdao.inl
  Include/afxinet.h
  Include/afxinet.inl
  Include/afxisapi.h
  Include/afxisapi.inl
  Include/afxmsg_.h
  Include/afxmt.h
  Include/afxmt.inl
  Include/afxdao.h
  Include/afxdllx.h
  Include/afxole.h
  Include/afxctl.inl
  Include/afxpriv.h
  Include/afxpriv2.h
  Include/afxres.h
  Include/afxrich.h
  Include/afxcview.h
  Include/afxsock.h
  Include/afxsock.inl
  Include/afxrich.inl
  Include/afxstat_.h
  Include/afxtempl.h
  Include/afxtls_.h
  Include/afxv_cfg.h
  Include/afxv_cpu.h
  Include/afxv_dll.h
  Include/afxv_w32.h
  Include/afxver_.h
  Include/afxcoll.inl
  Include/afxwin1.inl
  Include/winres.h
  Include/afxcmn2.inl
  Include/afxdtctl.h
  Include/afxdtctl.inl
  Include/afxhtml.h
  Include/afxhtml.inl
  Include/afxoledb.h
  Include/afxbld_.h
  Include/afxole.inl
  Include/afxwin2.inl
  Include/afxwin.h
  Include/afxplex_.h
  Include/afxodlgs.h
  Include/afxext.h
  Include/afxcmn.inl
  Include/l.kor/afxctl.rc
  Include/l.kor/afxdb.rc
  Include/l.kor/afxolesv.rc
  Include/l.kor/afxprint.rc
  Include/l.kor/afxisapi.rc
  Include/l.kor/afxolecl.rc
  Include/l.kor/afxres.rc
  Include/l.jpn/afxisapi.rc
  Include/l.jpn/afxdb.rc
  Include/l.jpn/afxctl.rc
  Include/l.jpn/afxolecl.rc
  Include/l.jpn/afxprint.rc
  Include/l.jpn/afxres.rc
  Include/l.jpn/afxolesv.rc
  Include/l.ita/afxdb.rc
  Include/l.ita/afxolecl.rc
  Include/l.ita/afxolesv.rc
  Include/l.ita/afxprint.rc
  Include/l.ita/afxres.rc
  Include/l.ita/afxisapi.rc
  Include/l.ita/afxctl.rc
  Include/l.fra/afxctl.rc
  Include/l.fra/afxdb.rc
  Include/l.fra/afxolecl.rc
  Include/l.fra/afxprint.rc
  Include/l.fra/afxres.rc
  Include/l.fra/afxolesv.rc
  Include/l.fra/afxisapi.rc
  Include/l.esp/afxctl.rc
  Include/l.esp/afxdb.rc
  Include/l.esp/afxolesv.rc
  Include/l.esp/afxres.rc
  Include/l.esp/afxisapi.rc
  Include/l.esp/afxolecl.rc
  Include/l.esp/afxprint.rc
  Include/l.deu/afxdb.rc
  Include/l.deu/afxolesv.rc
  Include/l.deu/afxisapi.rc
  Include/l.deu/afxctl.rc
  Include/l.deu/afxolecl.rc
  Include/l.deu/afxprint.rc
  Include/l.deu/afxres.rc
  Include/l.cht/afxdb.rc
  Include/l.cht/afxolecl.rc
  Include/l.cht/afxolesv.rc
  Include/l.cht/afxprint.rc
  Include/l.cht/afxisapi.rc
  Include/l.cht/afxctl.rc
  Include/l.cht/afxres.rc
  Include/l.chs/afxdb.rc
  Include/l.chs/afxprint.rc
  Include/l.chs/afxisapi.rc
  Include/l.chs/afxres.rc
  Include/l.chs/afxctl.rc
  Include/l.chs/afxolecl.rc
  Include/l.chs/afxolesv.rc
  src/afxabort.cpp
  src/afxasert.cpp
  src/afxcrit.cpp
  src/afxdbcs.cpp
  src/afxinl1.cpp
  src/afxinl2.cpp
  src/afxinl3.cpp
  src/afxmem.cpp
  src/afxstate.cpp
  src/afxtls.cpp
  src/afxtrace.cpp
  src/app3d.cpp
  src/app3ds.cpp
  src/appcore.cpp
  src/appdlg.cpp
  src/appgray.cpp
  src/apphelp.cpp
  src/apphelpx.cpp
  src/appinit.cpp
  src/appmodul.cpp
  src/appprnt.cpp
  src/appterm.cpp
  src/appui.cpp
  src/appui1.cpp
  src/appui2.cpp
  src/appui3.cpp
  src/arccore.cpp
  src/arcex.cpp
  src/arcobj.cpp
  src/arcstrm.cpp
  src/array_b.cpp
  src/array_d.cpp
  src/array_o.cpp
  src/array_p.cpp
  src/array_s.cpp
  src/array_u.cpp
  src/array_w.cpp
  src/auxdata.cpp
  src/barcool.cpp
  src/barcore.cpp
  src/bardlg.cpp
  src/bardock.cpp
  src/barstat.cpp
  src/bartool.cpp
  src/ccdata.cpp
  src/cmdtarg.cpp
  src/ctlcache.cpp
  src/ctlconn.cpp
  src/ctlcore.cpp
  src/ctldata.cpp
  src/ctlevent.cpp
  src/ctlfont.cpp
  src/ctlframe.cpp
  src/ctlinl.cpp
  src/ctlinplc.cpp
  src/ctlintl.cpp
  src/ctllic.cpp
  src/ctlmodul.cpp
  src/ctlnownd.cpp
  src/ctlobj.cpp
  src/ctlpbag.cpp
  src/ctlpict.cpp
  src/ctlppg.cpp
  src/ctlprop.cpp
  src/ctlpropx.cpp
  src/ctlpset.cpp
  src/ctlpstg.cpp
  src/ctlpstm.cpp
  src/ctlquick.cpp
  src/ctlrefl.cpp
  src/ctlreg.cpp
  src/ctltrack.cpp
  src/ctlview.cpp
  src/daocore.cpp
  src/daodfx.cpp
  src/daoview.cpp
  src/dbcore.cpp
  src/dbflt.cpp
  src/dblong.cpp
  src/dbrfx.cpp
  src/dbvar.cpp
  src/dbview.cpp
  src/dcmeta.cpp
  src/dcprev.cpp
  src/dlgclr.cpp
  src/dlgcomm.cpp
  src/dlgcore.cpp
  src/dlgdata.cpp
  src/dlgfile.cpp
  src/dlgfloat.cpp
  src/dlgfnt.cpp
  src/dlgfr.cpp
  src/dlgprnt.cpp
  src/dlgprop.cpp
  src/dlgtempl.cpp
  src/dlldb.cpp
  src/dllinit.cpp
  src/dllmodul.cpp
  src/dllnet.cpp
  src/dllole.cpp
  src/doccore.cpp
  src/dockcont.cpp
  src/dockstat.cpp
  src/docmapi.cpp
  src/docmgr.cpp
  src/docmulti.cpp
  src/docsingl.cpp
  src/doctempl.cpp
  src/dumpcont.cpp
  src/dumpflt.cpp
  src/dumpinit.cpp
  src/dumpout.cpp
  src/dumpstak.cpp
  src/except.cpp
  src/filecore.cpp
  src/filefind.cpp
  src/filelist.cpp
  src/filemem.cpp
  src/fileshrd.cpp
  src/filest.cpp
  src/filetxt.cpp
  src/filex.cpp
  src/fixalloc.cpp
  src/inet.cpp
  src/inetcall.cpp
  src/isapi.cpp
  src/isapimix.cpp
  src/list_o.cpp
  src/list_p.cpp
  src/list_s.cpp
  src/map_pp.cpp
  src/map_pw.cpp
  src/map_so.cpp
  src/map_sp.cpp
  src/map_ss.cpp
  src/map_wo.cpp
  src/map_wp.cpp
  src/mtcore.cpp
  src/mtex.cpp
  src/nolib.cpp
  src/objcore.cpp
  src/occcont.cpp
  src/occddx.cpp
  src/occddxf.cpp
  src/occdlg.cpp
  src/occevent.cpp
  src/occlock.cpp
  src/occmgr.cpp
  src/occsite.cpp
  src/oleasmon.cpp
  src/olebar.cpp
  src/olecall.cpp
  src/olecli1.cpp
  src/olecli2.cpp
  src/olecli3.cpp
  src/olecnvrt.cpp
  src/oleconn.cpp
  src/oledata.cpp
  src/oledisp1.cpp
  src/oledisp2.cpp
  src/oledlgs1.cpp
  src/oledlgs2.cpp
  src/oledlgs3.cpp
  src/oledll.cpp
  src/oledobj1.cpp
  src/oledobj2.cpp
  src/oledoc1.cpp
  src/oledoc2.cpp
  src/oledoccl.cpp
  src/oledocip.cpp
  src/oledocob.cpp
  src/oledoctg.cpp
  src/oledocvw.cpp
  src/oledrop1.cpp
  src/oledrop2.cpp
  src/oleenum.cpp
  src/oleexp.cpp
  src/olefact.cpp
  src/oleinit.cpp
  src/oleipfrm.cpp
  src/olelink.cpp
  src/olelock.cpp
  src/olemisc.cpp
  src/olemon.cpp
  src/olemsgf.cpp
  src/olepset.cpp
  src/olereg.cpp
  src/olestrm.cpp
  src/olesvr1.cpp
  src/olesvr2.cpp
  src/oletsvr.cpp
  src/oletyplb.cpp
  src/oleui1.cpp
  src/oleui2.cpp
  src/oleunk.cpp
  src/olevar.cpp
  src/olevar1.cpp
  src/oleverb.cpp
  src/plex.cpp
  src/ppgcolor.cpp
  src/ppgfont.cpp
  src/ppgpict.cpp
  src/ppgstock.cpp
  src/sockcore.cpp
  src/strcore.cpp
  src/strex.cpp
  src/thrdcore.cpp
  src/timecore.cpp
  src/tooltip.cpp
  src/trckrect.cpp
  src/validadd.cpp
  src/viewcmn.cpp
  src/viewcore.cpp
  src/viewedit.cpp
  src/viewform.cpp
  src/viewhtml.cpp
  src/viewoled.cpp
  src/viewprev.cpp
  src/viewprnt.cpp
  src/viewrich.cpp
  src/viewscrl.cpp
  src/winbtn.cpp
  src/wincore.cpp
  src/winctrl1.cpp
  src/winctrl2.cpp
  src/winctrl3.cpp
  src/winctrl4.cpp
  src/winctrl5.cpp
  src/winctrl6.cpp
  src/winctrl7.cpp
  src/winfrm.cpp
  src/winfrm2.cpp
  src/winfrmx.cpp
  src/wingdi.cpp
  src/wingdix.cpp
  src/winhand.cpp
  src/winmain.cpp
  src/winmdi.cpp
  src/winmenu.cpp
  src/winmini.cpp
  src/winocc.cpp
  src/winsplit.cpp
  src/winstr.cpp
  src/winutil.cpp
  src/indicate.rc
  src/l.chs/indicate.rc
  src/l.chs/prompts.rc
  src/l.cht/indicate.rc
  src/l.cht/prompts.rc
  src/l.deu/indicate.rc
  src/l.deu/prompts.rc
  src/l.esp/indicate.rc
  src/l.esp/prompts.rc
  src/l.fra/indicate.rc
  src/l.fra/prompts.rc
  src/l.ita/indicate.rc
  src/l.ita/prompts.rc
  src/l.jpn/indicate.rc
  src/l.jpn/prompts.rc
  src/l.kor/indicate.rc
  src/l.kor/prompts.rc
  src/prompts.rc
  src/afximpl.h
  src/ctlimpl.h
  src/daoimpl.h
  src/dbimpl.h
  src/dispimpl.h
  src/elements.h
  src/fixalloc.h
  src/occimpl.h
  src/ocdb.h
  src/ocdbid.h
  src/olebind.h
  src/oleimpl2.h
  src/sockimpl.h
  src/stdafx.cpp
  src/stdafx.h
  src/winhand_.h
  src/mfcole.rc
  src/mfcnet.rc
  src/mfcintl.rc
  src/mfcdll.rc
  src/mfcdb.rc
Generating project files...
  .
  src
  
  
  
3  make
make[1]: Entering directory `/home/ken/.wine/drive_c/mfc/src'
wrc   -I. -I/home/ken/.wine/drive_c/VC_Include -I/home/ken/.wine/drive_c/mfc/Include    -fomfcdb.res mfcdb.rc
wineg++ -mwindows -mno-cygwin -o mfcdb.so   mfcdb.res mfcdb.dbg.o   -lodbc32 -lole32 -loleaut32 -lwinspool -lmfc.dll -luuid -lmfc
/usr/bin/ld: cannot find -lmfc.dll
collect2: ld returned 1 exit status
winegcc: g++ failed.
make[1]: *** [mfcdb.so] Error 2
make[1]: Leaving directory `/home/ken/.wine/drive_c/mfc/src'
make: *** [src] Error 2

4 modify src/Makefile
delete 'mfc' in mfcintl_LIBRARIES  mfcdll_LIBRARIES mfcole_LIBRARIES   
delete mfc.dll in mfcintl_DLLS mfcisapi_DLLS  mfcnet_DLLS   mfcole_DLLS 

6 make again
[ken at Linux80 mfc]$ make
make[1]: Entering directory `/home/ken/.wine/drive_c/mfc/src'
winebuild -o mfcdb.dbg.c --debug -C.  
winegcc -c  -mno-cygwin -I. -I/home/ken/.wine/drive_c/VC_Include -I/home/ken/.wine/drive_c/mfc/Include    -o mfcdb.dbg.o mfcdb.dbg.c
wrc   -I. -I/home/ken/.wine/drive_c/VC_Include -I/home/ken/.wine/drive_c/mfc/Include    -fomfcdb.res mfcdb.rc
wineg++ -mwindows -mno-cygwin -o mfcdb.so   mfcdb.res mfcdb.dbg.o   -lodbc32 -lole32 -loleaut32 -lwinspool -luuid
winebuild -o mfcdll.dbg.c --debug -C.  
winegcc -c  -mno-cygwin -I. -I/home/ken/.wine/drive_c/VC_Include -I/home/ken/.wine/drive_c/mfc/Include    -o mfcdll.dbg.o mfcdll.dbg.c
wrc   -I. -I/home/ken/.wine/drive_c/VC_Include -I/home/ken/.wine/drive_c/mfc/Include    -fomfcdll.res mfcdll.rc
Warning: Stringtable's memory options are not equal (idbase: 61440)
wineg++ -mwindows -mno-cygwin -o mfcdll.so   mfcdll.res mfcdll.dbg.o   -lodbc32 -lole32 -loleaut32 -lwinspool -luuid
winebuild -o mfcintl.dbg.c --debug -C.  
winegcc -c  -mno-cygwin -I. -I/home/ken/.wine/drive_c/VC_Include -I/home/ken/.wine/drive_c/mfc/Include    -o mfcintl.dbg.o mfcintl.dbg.c
wrc   -I. -I/home/ken/.wine/drive_c/VC_Include -I/home/ken/.wine/drive_c/mfc/Include    -fomfcintl.res mfcintl.rc
mfcintl.rc:24:1: Error: Unable to open include file l.LANG\\afxres.rc
make[1]: *** [mfcintl.res] Error 1
make[1]: Leaving directory `/home/ken/.wine/drive_c/mfc/src'
make: *** [src] Error 2

I can not compile the resource file 'afxres.rc' successfully , can you tell me the reason please?
thanks so much


Best Regards

                                             yours sincerely 
                                                         ken
                                                         MSN:daixiaod at gsta.com
¡¡




More information about the wine-users mailing list