!This is a draft page, subject to review !This is a guide for building the release artifacts of MiNiFi C++ binaries for Windows. Follow it to create the artifacts and document the process as described in the documentation section. When packaging, the resulting MSI cannot be redistributed under the Apache License 2.0, because it includes Microsoft redistributable DLLs.
Required environment
Operating System: Microsoft Windows 10 x64
Recommended hardware: at least 4 CPU cores and 16 GiB RAM
Required software
- Microsoft Visual Studio 2017 2019 Community or Enterprise
- Install with the "Desktop development with C++" workload, it should include all needed components
- CMake >=3.16 (https://cmake.org/download/)
- Choose the "Add CMake to the system path..." option when installing
- git (https://git-scm.com/download/win)
- WiX Toolset >= 3.11 (https://wixtoolset.org/releases/)
- WiX Toolset requires .NET 3.5 to install, which you can install via the "Turn Windows features on or off" utility
Build process
To build the 64-bit msi execute the following steps:
- Create the
C:\Development
directory - Open
x64 Native Tools Command Prompt for VS 20172019
Code Block title Execute the following commands cd C:\Development git clone https://github.com/apache/nifi-minifi-cpp.git cd nifi-minifi-cpp git checkout <tag> win_build_vs.bat build64 /64 /T /K /P
- The artifact will be at
C:\Development\nifi-minifi-cpp\build64\nifi-minifi-cpp.msi
...
- Open
x86 Native Tools Command Prompt for VS 20172019
Code Block title Execute the following commands cd C:\Development\nifi-minifi-cpp win_build_vs.bat build32 /T /K /P
- The artifact will be at
C:\Development\nifi-minifi-cpp\build32\nifi-minifi-cpp.msi
Documentation
To document how a particulate release was built, duplicate this page (as it can change over time and will no longer reflect the process that was followed) and can be built, substitute the example values:
Information | How to obtain | Value |
---|---|---|
git tag of the used source | Knowing this is a precondition for starting the build | rel/minifi-cpp-0.710.0 |
OS version | Open "About your PC" and use Edition, Version and OS build under the Windows specifications section | Windows 10 Pro 1809 177632004 19041.9141052 |
MSVC version | Run cl from x64 Native Tools Command Prompt for VS 20172019 and extract the version | 19.1629.2703430037 |
VC Redistributable Merge Module Version | Run set VCToolsRedistDir from x64 Native Tools Command Prompt for VS 20172019 and extract the version | 14.1629.2701230036 |
CMake version | Run cmake --version and extract the version | 3.1619.04 |
git version | Run git --version and extract the version | 2.2430.0.windows.2 |
WiX Toolset version | Run the WiX application which displays the version | v3.11.2.4516 |
...