1 Building OpenCV from Source, using CMake and Command Line 2 ========================================================= 3 4 Requirements 5 ============ 6 CMake 3.1.0 or higher 7 Windows Phone/Store 8.1 Visual Studio 2013 8 Windows Phone/Store 8.0 Visual Studio 2012 9 10 For example, to be able to build all Windows Phone and Windows Store projects install the following: 11 12 Install Visual Studio 2013 Community Edition 13 http://go.microsoft.com/?linkid=9863608 14 15 Install Visual Studio Express 2012 for Windows Desktop 16 http://www.microsoft.com/en-us/download/details.aspx?id=34673 17 18 19 20 To create and build all Windows Phone (8.0, 8.1) and Windows Store (8.0, 8.1) Visual Studio projects 21 ========================================================================================== 22 cd opencv/platforms/winrt 23 setup_winrt.bat "WP,WS" "8.0,8.1" "x86,ARM" -b 24 25 If everything's fine, a few minutes later you will get the following output in the opencv/bin directory: 26 27 bin 28 install 29 WP 30 8.0 31 ARM 32 x86 33 8.1 34 ARM 35 x86 36 WS 37 8.0 38 ARM 39 x86 40 8.1 41 ARM 42 x86 43 WP 44 8.0 45 ARM 46 x86 47 8.1 48 ARM 49 x86 50 WS 51 8.0 52 ARM 53 x86 54 8.1 55 ARM 56 x86 57 58 "-b" flag in the command above builds each generated solutions in both "Debug" and "Release" configurations. It also builds the predefined "INSTALL" project within generated solutions. Building it creates a separate install location that accumulates binaries and includes for specified platforms. Default location is "<ocv-src>\bin\install\". 59 60 WinRT samples reference 'install' binaries and include files via "OPENCV_WINRT_INSTALL_DIR" environment variable. Please declare it and point to "<ocv-src>\bin\install\" directory to resolve references within sample applications. 61 62 If you don't want to build all configurations automatically, you can omit "-b" flag and build OpenCV.sln for the particular platform you are targeting manually. Due to the current limitations of CMake, separate x86/x64/ARM projects must be generated for each platform. 63 64 You can also target a single specific configuration 65 setup_winrt.bat "WP" "8.1" "x86" 66 67 Or a subset of configurations 68 setup_winrt.bat "WP,WS" "8.1" "x86" 69 70 To display the command line options for setup_winrt.bat 71 setup_winrt.bat -h 72 73 Note that x64 CMake generation support is as follows: 74 ------------------------------ 75 Platform\Version | 8.0 | 8.1 | 76 -----------------|-----|-----| 77 Windows Phone | No | No | 78 Windows Store | Yes | Yes | 79 80 Note: setup_winrt.bat calls the unsigned PowerShell script with the -ExecutionPolicy Unrestricted option. 81 82 83 CMake command line options for Windows Phone and Store 84 ====================================================== 85 86 cmake [options] <path-to-source> 87 88 Windows Phone 8.1 x86 89 cmake -G "Visual Studio 12 2013" -DCMAKE_SYSTEM_NAME=WindowsPhone -DCMAKE_SYSTEM_VERSION=8.1 <path-to-source> 90 91 Windows Phone 8.1 ARM 92 cmake -G "Visual Studio 12 2013 ARM" -DCMAKE_SYSTEM_NAME=WindowsPhone -DCMAKE_SYSTEM_VERSION=8.1 <path-to-source> 93 94 Windows Store 8.1 x86 95 cmake -G "Visual Studio 12 2013" -DCMAKE_SYSTEM_NAME=WindowsStore -DCMAKE_SYSTEM_VERSION=8.1 <path-to-source> 96 97 Windows Store 8.1 ARM 98 cmake -G "Visual Studio 12 2013 ARM" -DCMAKE_SYSTEM_NAME=WindowsStore -DCMAKE_SYSTEM_VERSION=8.1 <path-to-source> 99 100 Note: For Windows 8.0 Phone and Store you can specify either Visual Studio 11 2012 or Visual Studio 12 2013 as the generator 101 102 Windows Phone 8.0 x86 103 cmake -G "Visual Studio 12 2013" -DCMAKE_SYSTEM_NAME=WindowsPhone -DCMAKE_SYSTEM_VERSION=8.0 <path-to-source> 104 105 Windows Phone 8.0 ARM 106 cmake -G "Visual Studio 12 2013 ARM" -DCMAKE_SYSTEM_NAME=WindowsPhone -DCMAKE_SYSTEM_VERSION=8.0 <path-to-source> 107 108 Windows Store 8.0 x86 109 cmake -G "Visual Studio 12 2013" -DCMAKE_SYSTEM_NAME=WindowsStore -DCMAKE_SYSTEM_VERSION=8.0 <path-to-source> 110 111 Windows Store 8.0 ARM 112 cmake -G "Visual Studio 12 2013 ARM" -DCMAKE_SYSTEM_NAME=WindowsStore -DCMAKE_SYSTEM_VERSION=8.0 <path-to-source> 113 114 Example 115 ====================================================== 116 117 To generate Windows Phone 8.1 x86 project files in the opencv/bin dir 118 119 mkdir bin 120 cd bin 121 cmake -G "Visual Studio 12 2013" -DCMAKE_SYSTEM_NAME=WindowsPhone -DCMAKE_SYSTEM_VERSION=8.1 ../ 122