[webkit-help] Webkit-Cairo Windows build problems
Jerry Evans
jerry at NovaDSP.com
Fri Oct 21 04:49:11 PDT 2011
Can anyone help? I am trying to get the Cairo port built using VS2008*
and am having problems with files ending up in the wrong locations. I
suspect I've missed something basic, any help would be much appreciated.
Thanks
Some examples follow:
---------------------------------------------------------
u:\cygwin\home\JEvans\WebKit\Source\WebCore\WebCore.vcproj>xcopy /y /d
/s /exclude:xcopy.excludes
"U:\cygwin\home\JEvans\WebKit\bin\Debug_Cairo_CFLite\obj\WebCore\DerivedSources\InspectorBackendStub.js"
"U:\cygwin\home\JEvans\WebKit\bin\Debug_Cairo_CFLite\bin\WebKit.resources\inspector"
File not found - InspectorBackendStub.js
C1083: Cannot open source file:
'..\..\..\bin\Debug_Cairo_CFLite\obj\WebCore\DerivedSources\MathMLNames.cpp':
C1083: Cannot open source file:
'..\..\..\bin\Debug_Cairo_CFLite\obj\WebCore\DerivedSources\MathMLElementFactory.cpp'
C1083: Cannot open source file:
'..\..\..\bin\Debug_Cairo_CFLite\obj\WebCore\DerivedSources\JSSVGElementWrapperFactory.cpp'
C1083: Cannot open include file: 'WebCore/WebCoreHeaderDetection.h': No
such file or directory
u:\cygwin\home\JEvans\WebKit\Source\WebCore\config.h 33
---------------------------------------------------------
An attempt to record, precisely, the steps necessary to build
WebKit-Cairo using VS2008 or later on Windows 7.
1. Ensure Cygwin SVN is 1.7+. Earlier versions had a DLL problem which
meant rebasing and consequent failure ...
N.B. Build scripts e.g U:\cygwin\home\JEvans\WebKit\Tools\MiniBrowser
and some .vcproj files assume Cygwin is installed in
%SYSTEMDRIVE%\Cygwin. *Bad* move.
2. Ensure you can run VS2008 or VS2010 toolchain from a Cygwin bash
shell. $INCLUDE will also need the paths to the Windows SDK , DirectX etc.
3. Ensure Cygwin bash is in %PATH% so it can be accessed by Visual
Studio as it is called during builds. Can also be added to executable
options in VS.
4. In Cygwin:
cd ~ (go to root of home folder)
svn checkout http://svn.webkit.org/repository/webkit/trunk WebKit
This creates the WebKit folder in your /home directory - there are
apparently some hard-coded parts of the build which depend on this
directory structure (!)
5. Ensure correct environment variables are set*:
WEBKITOUTPUTDIR=U:\cygwin\home\JEvans\WebKit\bin
WEBKITLIBRARIESDIR=U:\cygwin\home\JEvans\WebKit\WebKitLibraries\win
6. From the Webkit root directory run ./Tools/Scripts/update-webkit
--wincairo to get latest WinCairo* stuff.
7. From the Webkit root directory run ./Tools/Scripts/build-webkit
--wincairo to create Visual Studio projects
8. Step 6 will fail almost immediately as the solution created is for
VS2005.
9. Go to path/to/Webkit/Source\WebKit\win\WebKit.vcproj and open
WebKit.sln. You will be prompted to OK conversion process. Do so.
10. Set the default project to be WinLauncher.
11. Ensure Solution Configuration is set to XXX_Cairo_CFLite where XXX
is Debug or Release
12. Build ... it will probably fail if you installed Cygwin to somewhere
other than c:\. I use grepWin* to search and replace all offending files
thus: %SYSTEMDRIVE% -> %CygDrive%where CygDrive is set to u: (no slash)
13. Restart VS so it picks up any environment changes ...
14. You may well have to build JavaScriptCoreGenerated twice. It seems
to fail the first time around with some precision
15. The next failure will be in WTF (yeah:). error C2220: warning
treated as error - no 'object' file generated
It is set to \Wx so no .obj modules are produced when you get warnings
from HashSet.h and friends ...
*WinCairo
http://whtconstruct.blogspot.com/2011/04/towards-simpler-wincairo-build.html
*Environment variables: Use REE http://www.rapidee.com/en/download
*grepWin: http://code.google.com/p/grepwin/downloads/list
More information about the webkit-help
mailing list