skia2/site/user/quick/windows.md

97 lines
4.3 KiB
Markdown
Raw Normal View History

Windows
=======
Prerequisites
-------------
Make sure the following have been installed:
* Visual C++ 2013 Express or later, available for free
* http://www.visualstudio.com/downloads/download-visual-studio-vs#d-express-windows-8
* Chromium depot_tools
* http://www.chromium.org/developers/how-tos/depottools
* git
* Either use the mysygit installed by depot_tools
* Or install msys git: http://msysgit.github.io/ yourself
* Python 2.7.x (if you're not planning to use cygwin)
* available for free download at http://www.python.org/download/releases/
* make sure the installer changes your %PATH% environment variable to include the directory with the "python.exe" binary
* Cygwin (optional, but useful if you want to use git)
* Download from http://cygwin.org/setup.exe
* use any mirror you like; http://lug.mtu.edu works well
* Cygwin installs a minimum of options. Add these packages if they aren't already selected:
* Devel git
* Devel subversion
* Editors vim
* to fix arrows in insert, copy /usr/share/vim/vim73/vimrc_example.vim to ~/.vimrc
* Net ca-certificates
* Python python
* Utils patch
* Utils util-linux
* set the windows envionment variable CYGWIN to nodosfilewarning
Check out the source code
-------------------------
see https://sites.google.com/site/skiadocs/developer-documentation/contributing-code/downloading
Generate Visual Studio projects
-------------------------------
We use the open-source gyp tool to generate Visual Studio projects (and
analogous build scripts on other platforms) from our multi-platform "gyp"
files.
You can generate the Visual Studio projects by running gyp_skia, as follows:
cd %SKIA_CHECKOUT_DIR%
python gyp_skia
This will produce Visual Studio projects in the `%SKIA_CHECKOUT_DIR%\out` directory.
Build and run tests from the command line
-----------------------------------------
ninja -C out\Debug dm
out\Debug\dm
Normally you should run tests in Debug mode (SK_DEBUG is defined, and debug
symbols are included in the binary). If you would like to build the Release
version instead:
ninja -C out\Release dm
out\Release\dm
Build and run tests in the Visual Studio IDE
--------------------------------------------
* Generate the Visual Studio project files by running gyp_skia as described above
* Open a File Explorer window pointing at the %SKIA_CHECKOUT_DIR%\out\gyp directory
* Double-click on dm.sln to start Visual Studio and load the project
* When Visual Studio starts, you may see an error dialog stating that "One or more projects in the solution were not loaded correctly"... but there's probably nothing to worry about.
* In the "Solution Explorer" window, right-click on the "dm" project and select "Set as StartUp Project".
* In the "Debug" menu, click on "Start Debugging" (or just press F5). If you get a dialog saying that the project is out of date, click on "Yes" to rebuild it.
* Once the build is complete, you should see console output from the tests in the "Output" window at lower right.
Build and run SampleApp in Visual Studio
----------------------------------------
* Generate the Visual Studio project files by running gyp_skia as described above
* Open a File Explorer window pointing at the %SKIA_INSTALLDIR%\trunk\out\gyp directory
* Double-click on SampleApp.sln
* When Visual Studio starts, you may see an error dialog stating that "One or more projects in the solution were not loaded correctly"... but there's probably nothing to worry about.
* In the "Debug" menu, click on "Start Debugging" (or just press F5). If you get a dialog saying that the project is out of date, click on "Yes" to rebuild it.
* Once the build is complete, you should see a window with various example graphics. To move through the sample app, use the following keypresses:
* right-arrow key: cycle through different test pages
* left-arrow key: cycle through rendering methods for each test page
* other keys are defined in SampleApp.cpps SampleWindow::onHandleKey() and SampleWindow::onHandleChar() methods
Build and run nanobench (performance testbench) from the command line
---------------------------------------------------------------------
Since nanobench tests performance, it usually makes more sense to run it in Release mode.
ninja -C out\Release nanobench
out\Release\nanobench