Building on Windows
To build NZBGet you will need:
- CMake
- MS C++ Build tools
- Download
Build Tools for Visual Studio 2022
and install it - Select
Desktop development with C++
in theDesktop & Mobile
section and install the necessary components:MSVC v143 - VS 2022 C++ x64/x86 build tools
Windows 11 SDK
C++ ATL for latest v143 build tools
C++ MFC for latest v143 build tools
Edit the
Path
enviroment variable and append the folder’s path that contains theMSBuild.exe
to it, e.g.:C:\Users\asus\AppData\Local\Programs\Microsoft VS Code\bin\
- Download
To compile the program with TLS/SSL support you need OpenSSL:
Also required are:
For tests:
We recommend using vcpkg to install dependencies:
- Clone the repository to the recommended
C:\
disk:
git clone --depth 1 https://github.com/microsoft/vcpkg.git
- Run the
bootstrap
script:
.\vcpkg\bootstrap-vcpkg.bat
- Edit the
Path
enviroment variable and append the folder’s path:C:\vcpkg
- Install all the dependencies:
vcpkg install openssl:x64-windows-static
vcpkg install libxml2:x64-windows-static
vcpkg install zlib:x64-windows-static
vcpkg install boost-json:x64-windows-static
vcpkg install boost-asio:x64-windows-static
- For tests:
vcpkg install boost-test:x64-windows-static
For Win32
, instead of :x64-windows-static
, use :x86-windows-static
.
- Configure:
mkdir build
cd build
cmake .. -DCMAKE_TOOLCHAIN_FILE=C:/vcpkg/scripts/buildsystems/vcpkg.cmake -DVCPKG_TARGET_TRIPLET=x64-windows-static -A x64
- Or for Win32:
cmake .. -DCMAKE_TOOLCHAIN_FILE=C:/vcpkg/scripts/buildsystems/vcpkg.cmake -DVCPKG_TARGET_TRIPLET=x86-windows-static -A Win32
- Release build:
cmake --build . --config Release
- Or for debug build:
cmake .. -DCMAKE_TOOLCHAIN_FILE=C:/vcpkg/scripts/buildsystems/vcpkg.cmake -DVCPKG_TARGET_TRIPLET=x64-windows-static -DCMAKE_BUILD_TYPE=Debug
- Debug build:
cmake --build . --config Debug
- Now, you can find the binary in the
Release/Debug
directory.
You may run configure with additional arguments:
- Disable TLS. Use this option if you cannot use OpenSSL:
cmake .. -DDISABLE_TLS=ON -DCMAKE_TOOLCHAIN_FILE=C:/vcpkg/scripts/buildsystems/vcpkg.cmake -DVCPKG_TARGET_TRIPLET=x64-windows-static
- Enable tests:
cmake .. -DENABLE_TESTS=ON -DCMAKE_TOOLCHAIN_FILE=C:/vcpkg/scripts/buildsystems/vcpkg.cmake -DVCPKG_TARGET_TRIPLET=x64-windows-static
- Run tests:
ctest -C Release
- Or for debug build:
ctest -C Debug
Introduction
Installation manuals
- Installation on Windows
- Installation on Windows via WinGet
- Installation on macOS
- Installation on macOS via Homebrew
- Installation on Linux
- Installation on Docker
- Installation on Docker - LinuxServer.io version
- Installation on Android
- Installation on Synology
- Installation on QNAP
- Installation on other NAS devices
Building manuals
Configuration
- Backup And Restore Settings
- Performance Tips
- Choosing Cipher
- Behind Other Web Server
- TLS certificate verification
- What is the Default NZBGet Password?
- NZBGet Docker Setup Guide
- NZBGet Port Settings and Access Guide
- How to Configure NZBGet: Complete Setup Guide
- What Is Usenet?
- NZBGet 502 Error: Quick Fix Guide
- How to Upgrade from NZBGet v21.1 to the Latest NZBGet Version
- Slow NZBGet Speeds? Here’s How to Fix It
- NZBGet Performance Optimization Guide
- NZBGet Path and Folder Structure Guide
- How to Link NZBGet with Sonarr, Radarr, and Other Tools
Usage
- Quick Filter
- Keyboard Shortcuts
- RSS and duplicate check
- VideoSort
- Console Mode
- Command Line Reference
- Performing Speed Tests
Development
Extensions
- Extension Scripts
- Post-processing scripts
- Scan Scripts
- Queue Scripts
- Scheduler Scripts
- Feed Scripts
- API reference
News server setup
- Astraweb
- BlockNews
- Cheapnews
- EasyNews
- Eweka
- FreeDiscussions
- Frugal Usenet
- GigaNews
- NewsDemon
- Newsgroup Ninja
- NewsgroupDirect
- Newshosting
- Pure Usenet
- SunnyUsenet
- Supernews
- theCubeNet
- ThunderNews
- TweakNews
- Usenet.Farm
- UsenetExpress
- UsenetServer
- UseNext
- ViperNews
- XLned
- XS News