{"id":2671,"date":"2026-05-08T11:02:41","date_gmt":"2026-05-08T03:02:41","guid":{"rendered":"https:\/\/i.refvalue.org\/?p=2671"},"modified":"2026-05-08T11:19:50","modified_gmt":"2026-05-08T03:19:50","slug":"how-to-compile-nextcloud-desktop-app-on-windows-msvc","status":"publish","type":"post","link":"https:\/\/i.refvalue.org\/index.php\/2026\/05\/08\/how-to-compile-nextcloud-desktop-app-on-windows-msvc\/","title":{"rendered":"How to Compile Nextcloud Desktop App on Windows (MSVC)"},"content":{"rendered":"\n<p>In this guide, we will walk through the complete process of setting up the environment, compiling dependencies, and building the Nextcloud Desktop Client from source using MSVC 2022 and Qt 6.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. Install Qt Components<\/h2>\n\n\n\n<p>First, download the <strong>AQT INSTALL<\/strong> command-line tool: <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"https:\/\/github.com\/miurahr\/aqtinstall\/releases\/download\/v3.3.0\/aqt_x64.exe\">Download aqt_x64.exe<\/a><\/p>\n\n\n\n<p>Use the tool to install <strong>Qt 6.9.0<\/strong> and its required modules by running the following in PowerShell:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro cbp-has-line-numbers\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--cbp-line-number-color:#D4D4D4;--cbp-line-number-width:calc(1 * 0.6 * .875rem);line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#1E1E1E\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#D4D4D4;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>aqt install-qt windows desktop 6.9.0 win64_msvc2022_64 -m qtwebengine qtshadertools qt5compat qtwebsockets --outputdir E:\/Dev\/Tools\/Qt-Portable<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki dark-plus\" style=\"background-color: #1E1E1E\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #D4D4D4\">aqt <\/span><span style=\"color: #DCDCAA\">install-qt<\/span><span style=\"color: #D4D4D4\"> windows desktop <\/span><span style=\"color: #B5CEA8\">6.9<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #B5CEA8\">0<\/span><span style=\"color: #D4D4D4\"> win64_msvc2022_64 -m qtwebengine qtshadertools qt5compat qtwebsockets --outputdir E:\/Dev\/Tools\/Qt-Portable<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2. Download Pre-compiled Third-party Dependencies<\/h2>\n\n\n\n<p>Download the following libraries and extract them to <code>E:\/Dev\/Libs<\/code>:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>OpenSSL<\/strong>: <a href=\"https:\/\/download.firedaemon.com\/FireDaemon-OpenSSL\/openssl-1.1.1w.zip\" target=\"_blank\" rel=\"noreferrer noopener\">Download v1.1.1w<\/a><\/li>\n\n\n\n<li><strong>ZLIB-NG<\/strong>: <a href=\"https:\/\/github.com\/zlib-ng\/zlib-ng\/releases\/download\/2.3.3\/zlib-ng-win-x86-64-compat.zip\" target=\"_blank\" rel=\"noreferrer noopener\">Download v2.3.3 (Compat)<\/a><\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">3. Manually Compile Third-party Dependencies<\/h2>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p><strong>Note:<\/strong> All commands in this section should be executed within a <strong>Developer PowerShell for VS 2022<\/strong> environment.<\/p>\n<\/blockquote>\n\n\n\n<h3 class=\"wp-block-heading\">3.1 ECM (Extra CMake Modules)<\/h3>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro cbp-has-line-numbers\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--cbp-line-number-color:#D4D4D4;--cbp-line-number-width:calc(1 * 0.6 * .875rem);line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#1E1E1E\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#D4D4D4;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>git clone https:\/\/invent.kde.org\/frameworks\/extra-cmake-modules.git --depth 1\ncmake -B Build -S . -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH=\"E:\/Dev\/Tools\/Qt-Portable\/6.9.0\/msvc2022_64\" -DCMAKE_INSTALL_PREFIX=\"E:\/Dev\/Libs\/kde-ecm\"\ncmake --build build --target install<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki dark-plus\" style=\"background-color: #1E1E1E\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #D4D4D4\">git clone https:\/\/invent.kde.org\/frameworks\/extra-cmake-modules.git --depth <\/span><span style=\"color: #B5CEA8\">1<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">cmake -B Build -S . -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH=<\/span><span style=\"color: #CE9178\">&quot;E:\/Dev\/Tools\/Qt-Portable\/6.9.0\/msvc2022_64&quot;<\/span><span style=\"color: #D4D4D4\"> -DCMAKE_INSTALL_PREFIX=<\/span><span style=\"color: #CE9178\">&quot;E:\/Dev\/Libs\/kde-ecm&quot;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">cmake --build build --target install<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3.2 libLZMA<\/h3>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro cbp-has-line-numbers\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--cbp-line-number-color:#D4D4D4;--cbp-line-number-width:calc(1 * 0.6 * .875rem);line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#1E1E1E\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#D4D4D4;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>git clone https:\/\/github.com\/kobolabs\/liblzma.git --depth 1\ncmake -B build -S . -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=\"E:\/Dev\/Libs\/liblzma-install\"\ncmake --build build --target install<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki dark-plus\" style=\"background-color: #1E1E1E\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #D4D4D4\">git clone https:\/\/<\/span><span style=\"color: #DCDCAA\">github.com<\/span><span style=\"color: #D4D4D4\">\/kobolabs\/liblzma.git --depth <\/span><span style=\"color: #B5CEA8\">1<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">cmake -B build -S . -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=<\/span><span style=\"color: #CE9178\">&quot;E:\/Dev\/Libs\/liblzma-install&quot;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">cmake --build build --target install<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3.3 bzip2<\/h3>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro cbp-has-line-numbers\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--cbp-line-number-color:#D4D4D4;--cbp-line-number-width:calc(1 * 0.6 * .875rem);line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#1E1E1E\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#D4D4D4;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>git clone https:\/\/github.com\/libarchive\/bzip2.git --depth 1\ncmake -B build -S . -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=\"E:\/Dev\/Libs\/bzip2-install\"\ncmake --build build --target install<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki dark-plus\" style=\"background-color: #1E1E1E\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #D4D4D4\">git clone https:\/\/<\/span><span style=\"color: #DCDCAA\">github.com<\/span><span style=\"color: #D4D4D4\">\/libarchive\/bzip2.git --depth <\/span><span style=\"color: #B5CEA8\">1<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">cmake -B build -S . -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=<\/span><span style=\"color: #CE9178\">&quot;E:\/Dev\/Libs\/bzip2-install&quot;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">cmake --build build --target install<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3.4 KDSingleApplication<\/h3>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro cbp-has-line-numbers\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--cbp-line-number-color:#D4D4D4;--cbp-line-number-width:calc(1 * 0.6 * .875rem);line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#1E1E1E\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#D4D4D4;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>git clone https:\/\/github.com\/KDAB\/KDSingleApplication.git --depth 1\ncmake -B Build -S . -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH=\"E:\/Dev\/Tools\/Qt-Portable\/6.9.0\/msvc2022_64;E:\/Dev\/Libs\/kde-ecm\" -DCMAKE_INSTALL_PREFIX=\"E:\/Dev\/Libs\/KDSingleApplication\"\ncmake --build build --target install<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki dark-plus\" style=\"background-color: #1E1E1E\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #D4D4D4\">git clone https:\/\/<\/span><span style=\"color: #DCDCAA\">github.com<\/span><span style=\"color: #D4D4D4\">\/KDAB\/KDSingleApplication.git --depth <\/span><span style=\"color: #B5CEA8\">1<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">cmake -B Build -S . -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH=<\/span><span style=\"color: #CE9178\">&quot;E:\/Dev\/Tools\/Qt-Portable\/6.9.0\/msvc2022_64;E:\/Dev\/Libs\/kde-ecm&quot;<\/span><span style=\"color: #D4D4D4\"> -DCMAKE_INSTALL_PREFIX=<\/span><span style=\"color: #CE9178\">&quot;E:\/Dev\/Libs\/KDSingleApplication&quot;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">cmake --build build --target install<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3.5 qtkeychain<\/h3>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro cbp-has-line-numbers\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--cbp-line-number-color:#D4D4D4;--cbp-line-number-width:calc(1 * 0.6 * .875rem);line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#1E1E1E\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#D4D4D4;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>git clone https:\/\/github.com\/frankosterfeld\/qtkeychain.git --depth 1\ncmake -B Build -S . -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH=\"E:\/Dev\/Tools\/Qt-Portable\/6.9.0\/msvc2022_64;E:\/Dev\/Libs\/kde-ecm\" -DCMAKE_INSTALL_PREFIX=\"E:\/Dev\/Libs\/qtkeychain\"\ncmake --build build --target install<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki dark-plus\" style=\"background-color: #1E1E1E\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #D4D4D4\">git clone https:\/\/<\/span><span style=\"color: #DCDCAA\">github.com<\/span><span style=\"color: #D4D4D4\">\/frankosterfeld\/qtkeychain.git --depth <\/span><span style=\"color: #B5CEA8\">1<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">cmake -B Build -S . -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH=<\/span><span style=\"color: #CE9178\">&quot;E:\/Dev\/Tools\/Qt-Portable\/6.9.0\/msvc2022_64;E:\/Dev\/Libs\/kde-ecm&quot;<\/span><span style=\"color: #D4D4D4\"> -DCMAKE_INSTALL_PREFIX=<\/span><span style=\"color: #CE9178\">&quot;E:\/Dev\/Libs\/qtkeychain&quot;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">cmake --build build --target install<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3.6 KArchive<\/h3>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro cbp-has-line-numbers\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--cbp-line-number-color:#D4D4D4;--cbp-line-number-width:calc(1 * 0.6 * .875rem);line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#1E1E1E\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#D4D4D4;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>git clone https:\/\/invent.kde.org\/frameworks\/karchive.git --depth 1\ncmake -B Build -S . -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH=\"E:\/Dev\/Tools\/Qt-Portable\/6.9.0\/msvc2022_64;E:\/Dev\/Libs\/kde-ecm;E:\/Dev\/Libs\/bzip2-install;E:\/Dev\/Libs\/liblzma-install;E:\/Dev\/Libs\/zlib-ng-win-x86-64-compat;E:\/Dev\/Libs\/openssl-1.1\/x64\" -DCMAKE_INSTALL_PREFIX=\"E:\/Dev\/Libs\/kf6archive\" -DWITH_LIBZSTD=OFF\ncmake --build build --target install<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki dark-plus\" style=\"background-color: #1E1E1E\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #D4D4D4\">git clone https:\/\/invent.kde.org\/frameworks\/karchive.git --depth <\/span><span style=\"color: #B5CEA8\">1<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">cmake -B Build -S . -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH=<\/span><span style=\"color: #CE9178\">&quot;E:\/Dev\/Tools\/Qt-Portable\/6.9.0\/msvc2022_64;E:\/Dev\/Libs\/kde-ecm;E:\/Dev\/Libs\/bzip2-install;E:\/Dev\/Libs\/liblzma-install;E:\/Dev\/Libs\/zlib-ng-win-x86-64-compat;E:\/Dev\/Libs\/openssl-1.1\/x64&quot;<\/span><span style=\"color: #D4D4D4\"> -DCMAKE_INSTALL_PREFIX=<\/span><span style=\"color: #CE9178\">&quot;E:\/Dev\/Libs\/kf6archive&quot;<\/span><span style=\"color: #D4D4D4\"> -DWITH_LIBZSTD=OFF<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">cmake --build build --target install<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3.7 SQLite3<\/h3>\n\n\n\n<p>Download the source and run the build script:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro cbp-has-line-numbers\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--cbp-line-number-color:#D4D4D4;--cbp-line-number-width:calc(1 * 0.6 * .875rem);line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#1E1E1E\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#D4D4D4;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>curl https:\/\/sqlite.org\/2026\/sqlite-src-3530100.zip -o E:\/Dev\/Libs\/sqlite-src.zip\nExpand-Archive E:\/Dev\/Libs\/sqlite-src.zip -DestinationPath E:\/Dev\/Libs\/\n# Enter the directory and build\n.\/make.bat<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki dark-plus\" style=\"background-color: #1E1E1E\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #D4D4D4\">curl https:\/\/sqlite.org\/<\/span><span style=\"color: #B5CEA8\">2026<\/span><span style=\"color: #D4D4D4\">\/sqlite-src-<\/span><span style=\"color: #B5CEA8\">3530100.<\/span><span style=\"color: #D4D4D4\">zip -o E:\/Dev\/Libs\/sqlite-src.zip<\/span><\/span>\n<span class=\"line\"><span style=\"color: #DCDCAA\">Expand-Archive<\/span><span style=\"color: #D4D4D4\"> E:\/Dev\/Libs\/sqlite-src.zip -DestinationPath E:\/Dev\/Libs\/<\/span><\/span>\n<span class=\"line\"><span style=\"color: #6A9955\"># Enter the directory and build<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">.\/<\/span><span style=\"color: #DCDCAA\">make.bat<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3.8 libp11<\/h3>\n\n\n\n<p><strong>Clone<\/strong>: <code>git clone https:\/\/github.com\/OpenSC\/libp11.git --depth 1<\/code><\/p>\n\n\n\n<p><strong>Create Config<\/strong>: Create <code>libp11.pc<\/code> in the root folder:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro cbp-has-line-numbers\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--cbp-line-number-color:#D4D4D4;--cbp-line-number-width:calc(1 * 0.6 * .875rem);line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#1E1E1E\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#D4D4D4;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>prefix=E:\/Dev\/Libs\/libp11\nexec_prefix=${prefix}\nlibdir=${prefix}\/src\nincludedir=${prefix}\/src\nName: libp11\nVersion: 0.4.12\nLibs: -L\"${libdir}\" -llibp11\nCflags: -I\"${includedir}\"<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki dark-plus\" style=\"background-color: #1E1E1E\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #569CD6\">prefix<\/span><span style=\"color: #D4D4D4\">=E:\/Dev\/Libs\/libp11<\/span><\/span>\n<span class=\"line\"><span style=\"color: #569CD6\">exec_prefix<\/span><span style=\"color: #D4D4D4\">=${prefix}<\/span><\/span>\n<span class=\"line\"><span style=\"color: #569CD6\">libdir<\/span><span style=\"color: #D4D4D4\">=${prefix}\/src<\/span><\/span>\n<span class=\"line\"><span style=\"color: #569CD6\">includedir<\/span><span style=\"color: #D4D4D4\">=${prefix}\/src<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">Name: libp11<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">Version: 0.4.12<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">Libs: -L<\/span><span style=\"color: #CE9178\">&quot;${libdir}&quot;<\/span><span style=\"color: #D4D4D4\"> -llibp11<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">Cflags: -I<\/span><span style=\"color: #CE9178\">&quot;${includedir}&quot;<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p><\/p>\n\n\n\n<p><strong>Code Fix<\/strong>: In <code>src\/util_uri.c<\/code>, comment out the legacy calls around line 40:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro cbp-has-line-numbers\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--cbp-line-number-color:#D4D4D4;--cbp-line-number-width:calc(1 * 0.6 * .875rem);line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#1E1E1E\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#D4D4D4;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>#ifndef HAVE_X509_GET0_NOTBEFORE\n\/\/# define X509_get0_notBefore X509_get_notBefore\n#endif<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki dark-plus\" style=\"background-color: #1E1E1E\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #C586C0\">#ifndef<\/span><span style=\"color: #569CD6\"> HAVE_X509_GET0_NOTBEFORE<\/span><\/span>\n<span class=\"line\"><span style=\"color: #6A9955\">\/\/# define X509_get0_notBefore X509_get_notBefore<\/span><\/span>\n<span class=\"line\"><span style=\"color: #C586C0\">#endif<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p><\/p>\n\n\n\n<p><strong>Export Fix<\/strong>: In <code>src\/libp11.exports<\/code>, use <code>;<\/code> to comment out <code>PKCS11_evp_pkey_sign<\/code> and <code>PKCS11_evp_pkey_decrypt<\/code>.<\/p>\n\n\n\n<p><strong>Build<\/strong>:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro cbp-has-line-numbers\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--cbp-line-number-color:#D4D4D4;--cbp-line-number-width:calc(1 * 0.6 * .875rem);line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#1E1E1E\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#D4D4D4;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>nmake -f Makefile.mak OPENSSL_DIR=\"E:\/Dev\/Libs\/openssl-1.1\/x64\" BUILD_FOR=WIN64<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki dark-plus\" style=\"background-color: #1E1E1E\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #D4D4D4\">nmake <\/span><span style=\"color: #D4D4D4\">-f<\/span><span style=\"color: #D4D4D4\"> Makefile.mak OPENSSL_DIR=<\/span><span style=\"color: #CE9178\">&quot;E:\/Dev\/Libs\/openssl-1.1\/x64&quot;<\/span><span style=\"color: #D4D4D4\"> BUILD_FOR=WIN64<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">4. Compiling the Nextcloud App<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Prerequisites<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Install Inkscape: <code>winget install Inkscape.Inkscape --interactive<\/code><\/li>\n\n\n\n<li>Download <a href=\"https:\/\/master.dl.sourceforge.net\/project\/unix-utils\/icoutils\/icoutils-0.32.3-x86_64.zip\" target=\"_blank\" rel=\"noreferrer noopener\">icoutils<\/a> and extract to <code>E:\/Dev\/Tools\/icoutils-0.32.3-x86_64<\/code>.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Source Code Adjustments<\/h3>\n\n\n\n<p><strong>Modify <code>src\/libsync\/clientsideencryption.cpp<\/code><\/strong>: Around line 43, add Windows header fixes to prevent macro conflicts:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro cbp-has-line-numbers\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--cbp-line-number-color:#D4D4D4;--cbp-line-number-width:calc(2 * 0.6 * .875rem);line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#1E1E1E\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#D4D4D4;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>#ifdef Q_OS_WIN\n#include &lt;windows.h>\n#include &lt;wincrypt.h>\n#undef ISSUER\n#undef SUBJECT\n#undef X509_NAME\n#undef X509_CERT_PAIR\n#undef X509_EXTENSIONS\n#undef OCSP_REQUEST\n#undef OCSP_RESPONSE\n#endif<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki dark-plus\" style=\"background-color: #1E1E1E\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #C586C0\">#ifdef<\/span><span style=\"color: #569CD6\"> Q_OS_WIN<\/span><\/span>\n<span class=\"line\"><span style=\"color: #C586C0\">#include<\/span><span style=\"color: #569CD6\"> <\/span><span style=\"color: #CE9178\">&lt;windows.h&gt;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #C586C0\">#include<\/span><span style=\"color: #569CD6\"> <\/span><span style=\"color: #CE9178\">&lt;wincrypt.h&gt;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #C586C0\">#undef<\/span><span style=\"color: #569CD6\"> ISSUER<\/span><\/span>\n<span class=\"line\"><span style=\"color: #C586C0\">#undef<\/span><span style=\"color: #569CD6\"> SUBJECT<\/span><\/span>\n<span class=\"line\"><span style=\"color: #C586C0\">#undef<\/span><span style=\"color: #569CD6\"> X509_NAME<\/span><\/span>\n<span class=\"line\"><span style=\"color: #C586C0\">#undef<\/span><span style=\"color: #569CD6\"> X509_CERT_PAIR<\/span><\/span>\n<span class=\"line\"><span style=\"color: #C586C0\">#undef<\/span><span style=\"color: #569CD6\"> X509_EXTENSIONS<\/span><\/span>\n<span class=\"line\"><span style=\"color: #C586C0\">#undef<\/span><span style=\"color: #569CD6\"> OCSP_REQUEST<\/span><\/span>\n<span class=\"line\"><span style=\"color: #C586C0\">#undef<\/span><span style=\"color: #569CD6\"> OCSP_RESPONSE<\/span><\/span>\n<span class=\"line\"><span style=\"color: #C586C0\">#endif<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p><\/p>\n\n\n\n<p><strong>Modify <code>src\/libsync\/vfs\/cfapi\/shellext\/thumbnailprovider.cpp<\/code><\/strong>: Add these headers at the top:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro cbp-has-line-numbers\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--cbp-line-number-color:#D4D4D4;--cbp-line-number-width:calc(1 * 0.6 * .875rem);line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#1E1E1E\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#D4D4D4;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>#include &lt;ntstatus.h>\n#define WIN32_NO_STATUS<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki dark-plus\" style=\"background-color: #1E1E1E\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #C586C0\">#include<\/span><span style=\"color: #569CD6\"> <\/span><span style=\"color: #CE9178\">&lt;ntstatus.h&gt;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #C586C0\">#define<\/span><span style=\"color: #569CD6\"> WIN32_NO_STATUS<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Final Build Command<\/h3>\n\n\n\n<p>In the <code>desktop-master<\/code> root directory:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro cbp-has-line-numbers\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--cbp-line-number-color:#D4D4D4;--cbp-line-number-width:calc(1 * 0.6 * .875rem);line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#1E1E1E\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#D4D4D4;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>$env:PKG_CONFIG_PATH=\"E:\/Dev\/Libs\/libp11\"\ncmake -B build -S . -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS=\"\/D_CRT_SECURE_NO_WARNINGS \/D_SILENCE_CXX20_OLD_SHARED_PTR_ATOMIC_SUPPORT_DEPRECATION_WARNING \/DOPENSSL_SUPPRESS_DEPRECATED \/DEHsc\" -DCMAKE_PREFIX_PATH=\"E:\/Dev\/Libs\/kde-ecm;E:\/Dev\/Tools\/Qt-Portable\/6.9.0\/msvc2022_64;E:\/Dev\/Libs\/openssl-1.1\/x64;E:\/Dev\/Libs\/zlib-ng-win-x86-64-compat;E:\/Dev\/Libs\/sqlite-src-3530100;E:\/Dev\/Libs\/KDSingleApplication;E:\/Dev\/Libs\/qtkeychain;E:\/Dev\/Libs\/kf6archive\" -DLIBP11_INCLUDE_DIR=\"E:\/Dev\/Libs\/libp11\/src\" -DLIBP11_LIBRARY=\"E:\/Dev\/Libs\/libp11\/src\/libp11.lib\" -DSQLite3_INCLUDE_DIR=\"E:\/Dev\/Libs\/sqlite-src-3530100\" -DSQLite3_LIBRARY=\"E:\/Dev\/Libs\/sqlite-src-3530100\/sqlite3.lib\" -DSVG_CONVERTER=\"C:\/Program Files\/Inkscape\/bin\/inkscape.exe\" -DIcoTool_EXECUTABLE=\"E:\/Dev\/Tools\/icoutils-0.32.3-x86_64\/bin\/icotool.exe\" -DCMAKE_INSTALL_PREFIX=\"E:\/desktop-master\/install\" -DBUILD_WITH_WEBENGINE=OFF -DBUILD_TESTING=OFF\ncmake --build build --target install<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki dark-plus\" style=\"background-color: #1E1E1E\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #9CDCFE\">$env:PKG_CONFIG_PATH<\/span><span style=\"color: #D4D4D4\">=<\/span><span style=\"color: #CE9178\">&quot;E:\/Dev\/Libs\/libp11&quot;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">cmake -B build -S . -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS=<\/span><span style=\"color: #CE9178\">&quot;\/D_CRT_SECURE_NO_WARNINGS \/D_SILENCE_CXX20_OLD_SHARED_PTR_ATOMIC_SUPPORT_DEPRECATION_WARNING \/DOPENSSL_SUPPRESS_DEPRECATED \/DEHsc&quot;<\/span><span style=\"color: #D4D4D4\"> -DCMAKE_PREFIX_PATH=<\/span><span style=\"color: #CE9178\">&quot;E:\/Dev\/Libs\/kde-ecm;E:\/Dev\/Tools\/Qt-Portable\/6.9.0\/msvc2022_64;E:\/Dev\/Libs\/openssl-1.1\/x64;E:\/Dev\/Libs\/zlib-ng-win-x86-64-compat;E:\/Dev\/Libs\/sqlite-src-3530100;E:\/Dev\/Libs\/KDSingleApplication;E:\/Dev\/Libs\/qtkeychain;E:\/Dev\/Libs\/kf6archive&quot;<\/span><span style=\"color: #D4D4D4\"> -DLIBP11_INCLUDE_DIR=<\/span><span style=\"color: #CE9178\">&quot;E:\/Dev\/Libs\/libp11\/src&quot;<\/span><span style=\"color: #D4D4D4\"> -DLIBP11_LIBRARY=<\/span><span style=\"color: #CE9178\">&quot;E:\/Dev\/Libs\/libp11\/src\/libp11.lib&quot;<\/span><span style=\"color: #D4D4D4\"> -DSQLite3_INCLUDE_DIR=<\/span><span style=\"color: #CE9178\">&quot;E:\/Dev\/Libs\/sqlite-src-3530100&quot;<\/span><span style=\"color: #D4D4D4\"> -DSQLite3_LIBRARY=<\/span><span style=\"color: #CE9178\">&quot;E:\/Dev\/Libs\/sqlite-src-3530100\/sqlite3.lib&quot;<\/span><span style=\"color: #D4D4D4\"> -DSVG_CONVERTER=<\/span><span style=\"color: #CE9178\">&quot;C:\/Program Files\/Inkscape\/bin\/inkscape.exe&quot;<\/span><span style=\"color: #D4D4D4\"> -DIcoTool_EXECUTABLE=<\/span><span style=\"color: #CE9178\">&quot;E:\/Dev\/Tools\/icoutils-0.32.3-x86_64\/bin\/icotool.exe&quot;<\/span><span style=\"color: #D4D4D4\"> -DCMAKE_INSTALL_PREFIX=<\/span><span style=\"color: #CE9178\">&quot;E:\/desktop-master\/install&quot;<\/span><span style=\"color: #D4D4D4\"> -DBUILD_WITH_WEBENGINE=OFF -DBUILD_TESTING=OFF<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">cmake --build build --target install<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">5. Manual Deployment<\/h2>\n\n\n\n<p>After a successful build, follow these steps to run the application:<\/p>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li>Navigate to <code>E:\/desktop-master\/install\/bin<\/code> and run <code>nextcloud.exe<\/code>.<\/li>\n\n\n\n<li><strong>Dependencies<\/strong>: If errors occur regarding missing DLLs, copy the required Qt runtime files from <code>E:\\Dev\\Tools\\Qt-Portable\\6.9.0\\msvc2022_64\\bin<\/code> to your <code>bin<\/code> folder.<\/li>\n\n\n\n<li><strong>Third-party DLLs<\/strong>: Collect relevant DLLs from the build directories of the dependencies in Section 3 and place them in the <code>bin<\/code> folder.<\/li>\n\n\n\n<li><strong>Plugins<\/strong>: Create a folder named <code>platforms<\/code> inside the <code>bin<\/code> directory. Copy <code>qwindows.dll<\/code> from <code>E:\\Dev\\Tools\\Qt-Portable\\6.9.0\\msvc2022_64\\plugins\\platforms\\<\/code> into it.<\/li>\n<\/ol>\n","protected":false},"excerpt":{"rendered":"<p>In this guide, we will walk through the complete process of setting up the environment, compiling dependencies, and building the Nextcloud Desktop Client from source using MSVC 2022 and Qt 6. 1. Install Qt Components First, download the AQT INSTALL command-line tool: Download aqt_x64.exe Use the tool to install Qt 6.9.0 and its required modules &hellip; <a href=\"https:\/\/i.refvalue.org\/index.php\/2026\/05\/08\/how-to-compile-nextcloud-desktop-app-on-windows-msvc\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;How to Compile Nextcloud Desktop App on Windows (MSVC)&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[5,13,33,32,34],"class_list":["post-2671","post","type-post","status-publish","format-standard","hentry","category-uncategorized","tag-c","tag-cmake","tag-msvc","tag-nextcloud","tag-windows"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>How to Compile Nextcloud Desktop App on Windows (MSVC) - Refvalue&#039;s Whispering Woods<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/i.refvalue.org\/index.php\/2026\/05\/08\/how-to-compile-nextcloud-desktop-app-on-windows-msvc\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to Compile Nextcloud Desktop App on Windows (MSVC) - Refvalue&#039;s Whispering Woods\" \/>\n<meta property=\"og:description\" content=\"In this guide, we will walk through the complete process of setting up the environment, compiling dependencies, and building the Nextcloud Desktop Client from source using MSVC 2022 and Qt 6. 1. Install Qt Components First, download the AQT INSTALL command-line tool: Download aqt_x64.exe Use the tool to install Qt 6.9.0 and its required modules &hellip; Continue reading &quot;How to Compile Nextcloud Desktop App on Windows (MSVC)&quot;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/i.refvalue.org\/index.php\/2026\/05\/08\/how-to-compile-nextcloud-desktop-app-on-windows-msvc\/\" \/>\n<meta property=\"og:site_name\" content=\"Refvalue&#039;s Whispering Woods\" \/>\n<meta property=\"article:published_time\" content=\"2026-05-08T03:02:41+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-05-08T03:19:50+00:00\" \/>\n<meta name=\"author\" content=\"refvalue\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"refvalue\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/i.refvalue.org\\\/index.php\\\/2026\\\/05\\\/08\\\/how-to-compile-nextcloud-desktop-app-on-windows-msvc\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/i.refvalue.org\\\/index.php\\\/2026\\\/05\\\/08\\\/how-to-compile-nextcloud-desktop-app-on-windows-msvc\\\/\"},\"author\":{\"name\":\"refvalue\",\"@id\":\"https:\\\/\\\/i.refvalue.org\\\/#\\\/schema\\\/person\\\/968c7dfefa7e2b45a131a884adbbf387\"},\"headline\":\"How to Compile Nextcloud Desktop App on Windows (MSVC)\",\"datePublished\":\"2026-05-08T03:02:41+00:00\",\"dateModified\":\"2026-05-08T03:19:50+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/i.refvalue.org\\\/index.php\\\/2026\\\/05\\\/08\\\/how-to-compile-nextcloud-desktop-app-on-windows-msvc\\\/\"},\"wordCount\":260,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/i.refvalue.org\\\/#\\\/schema\\\/person\\\/968c7dfefa7e2b45a131a884adbbf387\"},\"keywords\":[\"C++\",\"CMake\",\"MSVC\",\"NextCloud\",\"Windows\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/i.refvalue.org\\\/index.php\\\/2026\\\/05\\\/08\\\/how-to-compile-nextcloud-desktop-app-on-windows-msvc\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/i.refvalue.org\\\/index.php\\\/2026\\\/05\\\/08\\\/how-to-compile-nextcloud-desktop-app-on-windows-msvc\\\/\",\"url\":\"https:\\\/\\\/i.refvalue.org\\\/index.php\\\/2026\\\/05\\\/08\\\/how-to-compile-nextcloud-desktop-app-on-windows-msvc\\\/\",\"name\":\"How to Compile Nextcloud Desktop App on Windows (MSVC) - Refvalue&#039;s Whispering Woods\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/i.refvalue.org\\\/#website\"},\"datePublished\":\"2026-05-08T03:02:41+00:00\",\"dateModified\":\"2026-05-08T03:19:50+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/i.refvalue.org\\\/index.php\\\/2026\\\/05\\\/08\\\/how-to-compile-nextcloud-desktop-app-on-windows-msvc\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/i.refvalue.org\\\/index.php\\\/2026\\\/05\\\/08\\\/how-to-compile-nextcloud-desktop-app-on-windows-msvc\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/i.refvalue.org\\\/index.php\\\/2026\\\/05\\\/08\\\/how-to-compile-nextcloud-desktop-app-on-windows-msvc\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/i.refvalue.org\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to Compile Nextcloud Desktop App on Windows (MSVC)\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/i.refvalue.org\\\/#website\",\"url\":\"https:\\\/\\\/i.refvalue.org\\\/\",\"name\":\"Refvalue's Whispering Woods\",\"description\":\"Email: cosmicbytecode@gmail.com\",\"publisher\":{\"@id\":\"https:\\\/\\\/i.refvalue.org\\\/#\\\/schema\\\/person\\\/968c7dfefa7e2b45a131a884adbbf387\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/i.refvalue.org\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/i.refvalue.org\\\/#\\\/schema\\\/person\\\/968c7dfefa7e2b45a131a884adbbf387\",\"name\":\"refvalue\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/b380a5ef2d3d8de84eae26847c2dcd82df59b6f96ccc5c521a74795525566720?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/b380a5ef2d3d8de84eae26847c2dcd82df59b6f96ccc5c521a74795525566720?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/b380a5ef2d3d8de84eae26847c2dcd82df59b6f96ccc5c521a74795525566720?s=96&d=mm&r=g\",\"caption\":\"refvalue\"},\"logo\":{\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/b380a5ef2d3d8de84eae26847c2dcd82df59b6f96ccc5c521a74795525566720?s=96&d=mm&r=g\"},\"sameAs\":[\"https:\\\/\\\/i.refvalue.org\"],\"url\":\"https:\\\/\\\/i.refvalue.org\\\/index.php\\\/author\\\/refvalue\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How to Compile Nextcloud Desktop App on Windows (MSVC) - Refvalue&#039;s Whispering Woods","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/i.refvalue.org\/index.php\/2026\/05\/08\/how-to-compile-nextcloud-desktop-app-on-windows-msvc\/","og_locale":"en_US","og_type":"article","og_title":"How to Compile Nextcloud Desktop App on Windows (MSVC) - Refvalue&#039;s Whispering Woods","og_description":"In this guide, we will walk through the complete process of setting up the environment, compiling dependencies, and building the Nextcloud Desktop Client from source using MSVC 2022 and Qt 6. 1. Install Qt Components First, download the AQT INSTALL command-line tool: Download aqt_x64.exe Use the tool to install Qt 6.9.0 and its required modules &hellip; Continue reading \"How to Compile Nextcloud Desktop App on Windows (MSVC)\"","og_url":"https:\/\/i.refvalue.org\/index.php\/2026\/05\/08\/how-to-compile-nextcloud-desktop-app-on-windows-msvc\/","og_site_name":"Refvalue&#039;s Whispering Woods","article_published_time":"2026-05-08T03:02:41+00:00","article_modified_time":"2026-05-08T03:19:50+00:00","author":"refvalue","twitter_card":"summary_large_image","twitter_misc":{"Written by":"refvalue","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/i.refvalue.org\/index.php\/2026\/05\/08\/how-to-compile-nextcloud-desktop-app-on-windows-msvc\/#article","isPartOf":{"@id":"https:\/\/i.refvalue.org\/index.php\/2026\/05\/08\/how-to-compile-nextcloud-desktop-app-on-windows-msvc\/"},"author":{"name":"refvalue","@id":"https:\/\/i.refvalue.org\/#\/schema\/person\/968c7dfefa7e2b45a131a884adbbf387"},"headline":"How to Compile Nextcloud Desktop App on Windows (MSVC)","datePublished":"2026-05-08T03:02:41+00:00","dateModified":"2026-05-08T03:19:50+00:00","mainEntityOfPage":{"@id":"https:\/\/i.refvalue.org\/index.php\/2026\/05\/08\/how-to-compile-nextcloud-desktop-app-on-windows-msvc\/"},"wordCount":260,"commentCount":0,"publisher":{"@id":"https:\/\/i.refvalue.org\/#\/schema\/person\/968c7dfefa7e2b45a131a884adbbf387"},"keywords":["C++","CMake","MSVC","NextCloud","Windows"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/i.refvalue.org\/index.php\/2026\/05\/08\/how-to-compile-nextcloud-desktop-app-on-windows-msvc\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/i.refvalue.org\/index.php\/2026\/05\/08\/how-to-compile-nextcloud-desktop-app-on-windows-msvc\/","url":"https:\/\/i.refvalue.org\/index.php\/2026\/05\/08\/how-to-compile-nextcloud-desktop-app-on-windows-msvc\/","name":"How to Compile Nextcloud Desktop App on Windows (MSVC) - Refvalue&#039;s Whispering Woods","isPartOf":{"@id":"https:\/\/i.refvalue.org\/#website"},"datePublished":"2026-05-08T03:02:41+00:00","dateModified":"2026-05-08T03:19:50+00:00","breadcrumb":{"@id":"https:\/\/i.refvalue.org\/index.php\/2026\/05\/08\/how-to-compile-nextcloud-desktop-app-on-windows-msvc\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/i.refvalue.org\/index.php\/2026\/05\/08\/how-to-compile-nextcloud-desktop-app-on-windows-msvc\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/i.refvalue.org\/index.php\/2026\/05\/08\/how-to-compile-nextcloud-desktop-app-on-windows-msvc\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/i.refvalue.org\/"},{"@type":"ListItem","position":2,"name":"How to Compile Nextcloud Desktop App on Windows (MSVC)"}]},{"@type":"WebSite","@id":"https:\/\/i.refvalue.org\/#website","url":"https:\/\/i.refvalue.org\/","name":"Refvalue's Whispering Woods","description":"Email: cosmicbytecode@gmail.com","publisher":{"@id":"https:\/\/i.refvalue.org\/#\/schema\/person\/968c7dfefa7e2b45a131a884adbbf387"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/i.refvalue.org\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/i.refvalue.org\/#\/schema\/person\/968c7dfefa7e2b45a131a884adbbf387","name":"refvalue","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/b380a5ef2d3d8de84eae26847c2dcd82df59b6f96ccc5c521a74795525566720?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/b380a5ef2d3d8de84eae26847c2dcd82df59b6f96ccc5c521a74795525566720?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/b380a5ef2d3d8de84eae26847c2dcd82df59b6f96ccc5c521a74795525566720?s=96&d=mm&r=g","caption":"refvalue"},"logo":{"@id":"https:\/\/secure.gravatar.com\/avatar\/b380a5ef2d3d8de84eae26847c2dcd82df59b6f96ccc5c521a74795525566720?s=96&d=mm&r=g"},"sameAs":["https:\/\/i.refvalue.org"],"url":"https:\/\/i.refvalue.org\/index.php\/author\/refvalue\/"}]}},"_links":{"self":[{"href":"https:\/\/i.refvalue.org\/index.php\/wp-json\/wp\/v2\/posts\/2671","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/i.refvalue.org\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/i.refvalue.org\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/i.refvalue.org\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/i.refvalue.org\/index.php\/wp-json\/wp\/v2\/comments?post=2671"}],"version-history":[{"count":3,"href":"https:\/\/i.refvalue.org\/index.php\/wp-json\/wp\/v2\/posts\/2671\/revisions"}],"predecessor-version":[{"id":2676,"href":"https:\/\/i.refvalue.org\/index.php\/wp-json\/wp\/v2\/posts\/2671\/revisions\/2676"}],"wp:attachment":[{"href":"https:\/\/i.refvalue.org\/index.php\/wp-json\/wp\/v2\/media?parent=2671"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/i.refvalue.org\/index.php\/wp-json\/wp\/v2\/categories?post=2671"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/i.refvalue.org\/index.php\/wp-json\/wp\/v2\/tags?post=2671"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}