Lines Matching +full:curl +full:- +full:for +full:- +full:win
3 Instructions for building this repository on Linux, Windows, Android, and
8 1. [Contributing](#contributing-to-the-repository)
9 1. [Repository Content](#repository-content)
10 1. [Repository Set-Up](#repository-set-up)
11 1. [Windows Build](#building-on-windows)
12 1. [Linux Build](#building-on-linux)
13 1. [Android Build](#building-on-android)
14 1. [MacOS build](#building-on-macos)
18 If you intend to contribute, the preferred work flow is for you to develop
21 in this repository for more details.
33 - *install_dir*`/lib` : The Vulkan validation layer libraries
34 - *install_dir*`/share/vulkan/explicit_layer.d` : The Vulkan validation layer
40 ## Repository Set-Up
44 This repository does not contain a Vulkan-capable driver. You will need to
52 git clone https://github.com/KhronosGroup/Vulkan-ValidationLayers.git
59 1. CMake or Environment variable overrides (e.g., -DVULKAN_HEADERS_INSTALL_DIR)
61 1. System-installed packages, mostly applicable on Linux
68 #### Vulkan-Headers
71 [Vulkan Headers repository](https://github.com/KhronosGroup/Vulkan-Headers).
73 building this repository. The Vulkan-Headers repository is required because it
76 directory and pass it on the CMake command line for building this repository,
89 and pass it on the CMake command line for building this repository, as
100 Vulkan-ValidationLayers repository and run:
104 git checkout tags/release-1.8.1
111 #### Vulkan-Loader
121 [Vulkan-Loader repository](https://github.com/KhronosGroup/Vulkan-Loader.git)
123 it on the CMake command line for building this repository, as described below.
132 instructions follow this convention, although you can use any name for these
135 ### Building Dependent Repositories with Known-Good Revisions
142 as a quick-start tool for common use cases and default configurations.
144 For all platforms, start with:
146 git clone git@github.com:KhronosGroup/Vulkan-ValidationLayers.git
147 cd Vulkan-ValidationLayers
151 For 64-bit Linux and MacOS, continue with:
154 cmake -C helper.cmake ..
155 cmake --build .
157 For 64-bit Windows, continue with:
159 ..\scripts\update_deps.py --arch x64
160 cmake -A x64 -C helper.cmake ..
161 cmake --build .
163 For 32-bit Windows, continue with:
165 ..\scripts\update_deps.py --arch Win32
166 cmake -A Win32 -C helper.cmake ..
167 cmake --build .
170 specific requirements for configuring and building these components.
174 - You may need to adjust some of the CMake options based on your platform. See
175 the platform-specific sections later in this document.
176 - The `update_deps.py` script fetches and builds the dependent repositories in
179 - The `build` directory is also being used to build this
180 (Vulkan-ValidationLayers) repository. But there shouldn't be any conflicts
182 build files for this repository.
183 - The `--dir` option for `update_deps.py` can be used to relocate the
186 - The `update_deps.py` script generates a file named `helper.cmake` and places
190 repositories. You can use this file with the `cmake -C` option to set these
193 - If using "MINGW" (Git For Windows), you may wish to run
197 - Please use `update_deps.py --help` to list additional options and read the
198 internal documentation in `update_deps.py` for further information.
212 cmake --build . --target VulkanVL_generated_source
222 | ------ | -------- | ------- | ----------- |
235 | ------ | -------- | ------- | ----------- |
236 | CMAKE_OSX_DEPLOYMENT_TARGET | MacOS | `10.12` | The minimum version of MacOS for loader deploymen…
238 These variables should be set using the `-D` option when invoking CMake to
245 - Windows
246 - Any Personal Computer version supported by Microsoft
247 - Microsoft [Visual Studio](https://www.visualstudio.com/)
248 - Versions
249 - [2015](https://www.visualstudio.com/vs/older-downloads/)
250 - [2017](https://www.visualstudio.com/vs/downloads/)
251 - The Community Edition of each of the above versions is sufficient, as
253 - [CMake 3.10.2](https://cmake.org/files/v3.10/cmake-3.10.2-win64-x64.zip) is recommended.
254 - Use the installer option to add CMake to the system PATH
255 - Git Client Support
256 - [Git for Windows](http://git-scm.com/download/win) is a popular solution
257 for Windows
258 - Some IDEs (e.g., [Visual Studio](https://www.visualstudio.com/),
262 ### Windows Build - Microsoft Visual Studio
265 files. Then either run CMake with the `--build` option to build from the
271 cd Vulkan-ValidationLayers
274 cmake -A x64 -DVULKAN_HEADERS_INSTALL_DIR=absolute_path_to_install_dir \
275 -DGLSLANG_INSTALL_DIR=absolute_path_to_install_dir ..
276 cmake --build .
279 installation to generate a Visual Studio solution and projects for the x64
283 See below for the details.
290 cd Vulkan-ValidationLayers
293 cmake -A x64 -DVULKAN_HEADERS_INSTALL_DIR=absolute_path_to_install_dir \
294 -DGLSLANG_INSTALL_DIR=absolute_path_to_install_dir ..
300 The `-A` option is used to select either the "Win32" or "x64" architecture.
302 If a generator for a specific version of Visual Studio is required, you can
303 specify it for Visual Studio 2015, for example, with:
305 64-bit: -G "Visual Studio 14 2015 Win64"
306 32-bit: -G "Visual Studio 14 2015"
308 See this [list](#cmake-visual-studio-generators) of other possible generators
309 for Visual Studio.
311 When generating the project files, the absolute path to a Vulkan-Headers
314 `VULKAN_HEADERS_INSTALL_DIR` CMake variable with the `-D` CMake option. In
316 Vulkan-Headers repository built with the install target.
321 `GLSLANG_INSTALL_DIR` CMake variable with the `-D` CMake option. In either
326 `Vulkan-ValidationLayers.sln` in the build directory.
335 cmake --build .
339 cmake --build . --config Release
345 Launch Visual Studio and open the "Vulkan-ValidationLayers.sln" solution file
347 Configurations drop-down list. Start a build by selecting the Build->Build
354 style directory structure. This may be useful for collecting the artifacts and
363 cmake --build . --config Release --target install
369 If you do need to build and use your own loader, build the Vulkan-Loader
373 cmake -A x64 -DVULKAN_HEADERS_INSTALL_DIR=absolute_path_to_install_dir \
374 -DVULKAN_LOADER_INSTALL_DIR=absolute_path_to_install_dir \
375 -DGLSLANG_INSTALL_DIR=absolute_path_to_install_dir ..
382 [vkcube demo](https://www.github.com/KhronosGroup/Vulkan-Tools.git)
388 For Release builds:
392 For Debug builds:
394 .\run_all_tests.ps1 -Debug
398 - `vk_layer_validation_tests`:
409 | Build Platform | 64-bit Generator | 32-bit Generator |
410 |------------------------------|-------------------------------|-------------------------|
417 (`vulkan-1.dll`) library as well as any other libraries the program requires.
436 [CMake 3.10.2](https://cmake.org/files/v3.10/cmake-3.10.2-Linux-x86_64.tar.gz) is recommended.
440 sudo apt-get install git build-essential libx11-xcb-dev \
441 libxkbcommon-dev libwayland-dev libxrandr-dev \
442 libegl1-mesa-dev
447 CMake with the `--build` option or `make` to build from the command line.
451 cd Vulkan-ValidationLayers
454 cmake -DVULKAN_HEADERS_INSTALL_DIR=absolute_path_to_install_dir \
455 -DGLSLANG_INSTALL_DIR=absolute_path_to_install_dir ..
458 See below for the details.
465 cd Vulkan-ValidationLayers
468 cmake -DCMAKE_BUILD_TYPE=Debug \
469 -DVULKAN_HEADERS_INSTALL_DIR=absolute_path_to_install_dir \
470 -DGLSLANG_INSTALL_DIR=absolute_path_to_install_dir \
471 -DCMAKE_INSTALL_PREFIX=install ..
477 Use `-DCMAKE_BUILD_TYPE` to specify a Debug or Release build.
479 When generating the project files, the absolute path to a Vulkan-Headers
482 `VULKAN_HEADERS_INSTALL_DIR` CMake variable with the `-D` CMake option. In
484 Vulkan-Headers repository built with the install target.
489 `GLSLANG_INSTALL_DIR` CMake variable with the `-D` CMake option. In either
493 > Note: For Linux, the default value for `CMAKE_INSTALL_PREFIX` is
502 To speed up the build on a multi-core machine, use the `-j` option for `make`
503 to specify the number of cores to use for the build. For example:
505 make -j4
509 cmake --build .
511 If your build system supports ccache, you can enable that via CMake option `-DUSE_CCACHE=On`
517 By default, the repository components are built with support for the
518 Vulkan-defined WSI display servers: Xcb, Xlib, and Wayland. It is recommended
519 to build the repository components with support for these display servers to
521 these modules without support for one of the display servers, the appropriate
540 - `/usr/local/lib`: Vulkan layers shared objects
541 - `/usr/local/share/vulkan/explicit_layer.d`: Layer JSON files
547 CMake variables to override their defaults. For example, if you would like to
551 -DCMAKE_INSTALL_PREFIX=/tmp/build
554 `/tmp/build`. This may be useful for collecting the artifacts and providing
557 See the CMake documentation for more details on using these variables to
561 Vulkan-Loader repository for more information about loader and layer
578 - `vk_layer_validation_tests`: Test Vulkan validation layers
580 #### Linux 32-bit support
582 Usage of this repository's contents in 32-bit Linux environments is not
583 officially supported. However, since this repository is supported on 32-bit
584 Windows, these modules should generally work on 32-bit Linux.
586 Here are some notes for building 32-bit targets on a 64-bit Ubuntu "reference"
589 If not already installed, install the following 32-bit development libraries:
591 `gcc-multilib g++-multilib libx11-dev:i386`
594 you are building for.
596 Set up your environment for building 32-bit targets:
598 export ASFLAGS=--32
599 export CFLAGS=-m32
600 export CXXFLAGS=-m32
601 export PKG_CONFIG_LIBDIR=/usr/lib/i386-linux-gnu
611 You can run the `vkcube` or `vulkaninfo` applications from the Vulkan-Tools
616 Install the required tools for Linux and Windows covered above, then add the
624 - Install [Android Studio 2.3](https://developer.android.com/studio/index.html)
626 - From the "Welcome to Android Studio" splash screen, add the following
628 - SDK Platforms > Android 8.0.0 and newer
629 - SDK Tools > Android SDK Build-Tools
630 - SDK Tools > Android SDK Platform-Tools
631 - SDK Tools > Android SDK Tools
632 - SDK Tools > NDK
636 For each of the below, you may need to specify a different build-tools
642 export ANDROID_NDK_HOME=$HOME/Android/sdk/ndk-bundle
645 export PATH=$ANDROID_SDK_HOME/build-tools/26.0.3:$PATH
650 set ANDROID_NDK_HOME=%LOCALAPPDATA%\Android\sdk\ndk-bundle
651 set PATH=%LOCALAPPDATA%\Android\sdk\ndk-bundle;%PATH%
656 export ANDROID_NDK_HOME=$HOME/Library/Android/sdk/ndk-bundle
658 export PATH=$ANDROID_SDK_HOME/build-tools/26.0.3:$PATH
664 sudo apt-get install openjdk-8-jdk
672 - Follow instructions on [brew.sh](http://brew.sh) to get Homebrew installed.
674 … /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
676 - Ensure Homebrew is at the beginning of your PATH:
680 - Add packages with the following:
686 There are two options for building the Android layers. Either using the SPIRV
688 with SPIRV tools from the NDK, remove the build-android/third_party directory
691 everything in the repository for Android, including validation layers, tests,
695 cd build-android
698 Resulting validation layer binaries will be in build-android/libs. Test and
701 ./install_all.sh [-s <serial number>]
704 be completed. The following per platform commands can be used for layer only
709 Follow the setup steps for Linux or OSX above, then from your terminal:
711 cd build-android
712 ./update_external_sources_android.sh --no-build
713 ndk-build -j4
717 Follow the setup steps for Windows above, then from Developer Command Prompt
718 for VS2015:
720 cd build-android
722 ndk-build
733 for Android:
735 cd build-android
737 adb install -r bin/VulkanLayerValidationTests.apk
743 test_APK.sh -s <serial number> -p <plaform name> -f <gtest_filter>
751 [CMake 3.10.2](https://cmake.org/files/v3.10/cmake-3.10.2-Darwin-x86_64.tar.gz) is recommended.
755 - Follow instructions on [brew.sh](http://brew.sh) to get Homebrew installed.
757 … /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
759 - Ensure Homebrew is at the beginning of your PATH:
763 - Add packages with the following (may need refinement)
769 Clone the Vulkan-ValidationLayers repository:
771 git clone https://github.com/KhronosGroup/Vulkan-ValidationLayers.git
781 - Unix Makefiles
782 - Xcode
786 This generator is the default generator, so all that is needed for a debug
791 cmake -DVULKAN_HEADERS_INSTALL_DIR=absolute_path_to_install_dir \
792 -DGLSLANG_INSTALL_DIR=absolute_path_to_install_dir \
793 -DCMAKE_BUILD_TYPE=Debug ..
796 To speed up the build on a multi-core machine, use the `-j` option for `make`
797 to specify the number of cores to use for the build. For example:
799 make -j4
805 mkdir build-xcode
806 cd build-xcode
807 cmake -DVULKAN_HEADERS_INSTALL_DIR=absolute_path_to_install_dir \
808 -DGLSLANG_INSTALL_DIR=absolute_path_to_install_dir \
809 -GXcode ..
818 You can run the `vulkaninfo` applications from the Vulkan-Tools repository to
830 - MoltenVK ICD
831 - Mock ICD
837 You will have to direct the loader from Vulkan-Loader to the MoltenVK ICD:
843 Clone and build the [Vulkan-Tools](https://github.com/KhronosGroup/Vulkan-Tools) repository.
845 You will have to direct the loader from Vulkan-Loader to the Mock ICD:
847 export VK_ICD_FILENAMES=<path to Vulkan-Tools repository>/build/icd/VkICD_mock_icd.json
857 - `vk_layer_validation_tests`: Test Vulkan validation layers
861 [Vulkan-Tools](https://github.com/KhronosGroup/Vulkan-Tools)