From cc5212fdb1a9165b1b4f63ad21198172a068ee43 Mon Sep 17 00:00:00 2001
From: Felix Reichmann <54814163+Van-Fouran@users.noreply.github.com>
Date: Tue, 16 Aug 2022 08:21:55 +0200
Subject: Documentation overwork (#953)
Github PR: https://github.com/veracrypt/VeraCrypt/pull/953
* Create CompilingGuidelinerh
* Initial Upload Windows Compiling Guide
* Removed RIPEMD-160 from Product64.wxs. See commit from 21.03.2022
* Completed Win compiling guideline
* Added link to detailed compiling guide
* Added link to detailed compiling guide
* Restructured docu main page
* Added sourceforge link
* Added compiling guide for Linux
* References to detailed instructions
* Revert "Removed RIPEMD-160 from Product64.wxs. See commit from 21.03.2022"
This reverts commit 024ae2a4659a6d9e65673531338e10bd10b8a3a0.
* Correction of a div box
---
README.md | 53 +-
doc/html/CompilingGuidelineLinux.html | 329 ++++++
doc/html/CompilingGuidelineWin.html | 1231 ++++++++++++++++++++
doc/html/CompilingGuidelineWin/AddNewSystemVar.jpg | Bin 0 -> 71100 bytes
doc/html/CompilingGuidelineWin/CertVerifyFails.jpg | Bin 0 -> 15443 bytes
.../CertificateCannotBeVerified.jpg | Bin 0 -> 87022 bytes
.../DistributionPackageDamaged.jpg | Bin 0 -> 10581 bytes
doc/html/CompilingGuidelineWin/DownloadVS2010.jpg | Bin 0 -> 167558 bytes
doc/html/CompilingGuidelineWin/DownloadVS2019.jpg | Bin 0 -> 231800 bytes
.../CompilingGuidelineWin/DownloadVSBuildTools.jpg | Bin 0 -> 187788 bytes
doc/html/CompilingGuidelineWin/NasmCommandLine.jpg | Bin 0 -> 27541 bytes
.../CompilingGuidelineWin/RegeditPermissions-1.jpg | Bin 0 -> 42281 bytes
.../CompilingGuidelineWin/RegeditPermissions-2.jpg | Bin 0 -> 82730 bytes
.../CompilingGuidelineWin/RegeditPermissions-3.jpg | Bin 0 -> 48073 bytes
.../CompilingGuidelineWin/RegeditPermissions-4.jpg | Bin 0 -> 20213 bytes
.../SelectAdvancedSystemSettings.jpg | Bin 0 -> 142348 bytes
.../SelectEnvironmentVariables.jpg | Bin 0 -> 41283 bytes
.../CompilingGuidelineWin/SelectPathVariable.jpg | Bin 0 -> 71894 bytes
doc/html/CompilingGuidelineWin/SelectThisPC.jpg | Bin 0 -> 50245 bytes
.../CompilingGuidelineWin/VS2010BuildSolution.jpg | Bin 0 -> 59737 bytes
.../CompilingGuidelineWin/VS2010Win32Config.jpg | Bin 0 -> 167454 bytes
doc/html/CompilingGuidelineWin/VS2010X64Config.jpg | Bin 0 -> 149165 bytes
.../CompilingGuidelineWin/VS2019ARM64Config.jpg | Bin 0 -> 58551 bytes
.../CompilingGuidelineWin/VS2019BuildSolution.jpg | Bin 0 -> 49572 bytes
doc/html/CompilingGuidelineWin/YasmCommandLine.jpg | Bin 0 -> 33328 bytes
doc/html/CompilingGuidelineWin/gzipCommandLine.jpg | Bin 0 -> 28217 bytes
doc/html/CompilingGuidelineWin/upxCommandLine.jpg | Bin 0 -> 52807 bytes
doc/html/Documentation.html | 489 ++++++--
doc/html/LinuxPrepAndBuild.sh | 20 +
doc/html/Miscellaneous.html | 48 -
src/Readme.txt | 50 +-
31 files changed, 1962 insertions(+), 258 deletions(-)
create mode 100644 doc/html/CompilingGuidelineLinux.html
create mode 100644 doc/html/CompilingGuidelineWin.html
create mode 100644 doc/html/CompilingGuidelineWin/AddNewSystemVar.jpg
create mode 100644 doc/html/CompilingGuidelineWin/CertVerifyFails.jpg
create mode 100644 doc/html/CompilingGuidelineWin/CertificateCannotBeVerified.jpg
create mode 100644 doc/html/CompilingGuidelineWin/DistributionPackageDamaged.jpg
create mode 100644 doc/html/CompilingGuidelineWin/DownloadVS2010.jpg
create mode 100644 doc/html/CompilingGuidelineWin/DownloadVS2019.jpg
create mode 100644 doc/html/CompilingGuidelineWin/DownloadVSBuildTools.jpg
create mode 100644 doc/html/CompilingGuidelineWin/NasmCommandLine.jpg
create mode 100644 doc/html/CompilingGuidelineWin/RegeditPermissions-1.jpg
create mode 100644 doc/html/CompilingGuidelineWin/RegeditPermissions-2.jpg
create mode 100644 doc/html/CompilingGuidelineWin/RegeditPermissions-3.jpg
create mode 100644 doc/html/CompilingGuidelineWin/RegeditPermissions-4.jpg
create mode 100644 doc/html/CompilingGuidelineWin/SelectAdvancedSystemSettings.jpg
create mode 100644 doc/html/CompilingGuidelineWin/SelectEnvironmentVariables.jpg
create mode 100644 doc/html/CompilingGuidelineWin/SelectPathVariable.jpg
create mode 100644 doc/html/CompilingGuidelineWin/SelectThisPC.jpg
create mode 100644 doc/html/CompilingGuidelineWin/VS2010BuildSolution.jpg
create mode 100644 doc/html/CompilingGuidelineWin/VS2010Win32Config.jpg
create mode 100644 doc/html/CompilingGuidelineWin/VS2010X64Config.jpg
create mode 100644 doc/html/CompilingGuidelineWin/VS2019ARM64Config.jpg
create mode 100644 doc/html/CompilingGuidelineWin/VS2019BuildSolution.jpg
create mode 100644 doc/html/CompilingGuidelineWin/YasmCommandLine.jpg
create mode 100644 doc/html/CompilingGuidelineWin/gzipCommandLine.jpg
create mode 100644 doc/html/CompilingGuidelineWin/upxCommandLine.jpg
create mode 100644 doc/html/LinuxPrepAndBuild.sh
delete mode 100644 doc/html/Miscellaneous.html
diff --git a/README.md b/README.md
index 807d7b4b..e6af90d1 100644
--- a/README.md
+++ b/README.md
@@ -18,8 +18,6 @@ Contents
========
I. Windows
- Requirements for Building VeraCrypt for Windows.
- Instructions for Building VeraCrypt for Windows.
Instructions for Signing and Packaging VeraCrypt for Windows.
II. Linux and Mac OS X
@@ -40,19 +38,7 @@ VI. Further Information
I. Windows
==========
-Requirements for Building VeraCrypt for Windows:
-------------------------------------------------
-
-- Microsoft Visual C++ 2010 SP1 (Professional Edition or compatible)
-- Microsoft Visual C++ 2019
-- Microsoft Visual C++ 1.52 (available from MSDN Subscriber Downloads)
-- Microsoft Windows SDK for Windows 7.1 (configured for Visual C++ 2010)
-- Microsoft Windows SDK for Windows 8.1 (needed for SHA-256 code signing)
-- Microsoft Windows Driver Kit 7.1.0 (build 7600.16385.1)
-- NASM assembler 2.08 or compatible
-- YASM 1.3.0 or newer.
-- gzip compressor
-- upx packer (available at https://upx.github.io/)
+A detailed guide on how to compile VeraCrypt on Windows can be found at: https://www.veracrypt.fr/en/CompilingGuidelineWin.html
IMPORTANT:
@@ -74,41 +60,6 @@ the compiler, or if you install a different or no service pack for Visual
Studio, or different hotfixes for it, or if you use different versions of
the required SDKs).
-
-Instructions for Building VeraCrypt for Windows:
-------------------------------------------------
-
-1) Create an environment variable 'MSVC16_ROOT' pointing to the folder 'MSVC15'
- extracted from the Visual C++ 1.52 self-extracting package.
-
- Note: The 16-bit installer MSVC15\SETUP.EXE cannot be run on 64-bit Windows,
- but it is actually not necessary to run it. You only need to extract the
- folder 'MSVC15', which contains the 32-bit binaries required to build the
- VeraCrypt Boot Loader.
-
-2) If you have installed the Windows Driver Development Kit in another
- directory than '%SYSTEMDRIVE%\WinDDK', create an environment variable
- 'WINDDK_ROOT' pointing to the DDK installation directory.
-
-3) Open the solution file 'VeraCrypt.sln' in Microsoft Visual Studio 2010.
-
-4) Select 'All' as the active solution configuration and WIN32 as the active
- platform.
-
-5) Build the solution.
-
-6) Select x64 as the active platform and build the solution again.
-
-7) Open the solution file 'VeraCrypt_vs2019.sln' in Microsoft Visual Studio 2019.
-
-8) Select 'All' as the active solution configuration and ARM64 as the active
- platform.
-
-9) Build the solution.
-
-6) If successful, there should be newly built VeraCrypt binaries in the
- 'Release\Setup Files' folder.
-
Instructions for Signing and Packaging VeraCrypt for Windows:
-------------------------------------------------------------
@@ -136,6 +87,8 @@ For build instructions, please refer to the file src\Boot\EFI\Readme.txt.
II. Linux and Mac OS X
======================
+A detailed guide on how to build a dev environment and on how to compile VeraCrypt on Linux can be found at: https://www.veracrypt.fr/en/CompilingGuidelineLinux.html
+
Requirements for Building VeraCrypt for Linux and Mac OS X:
-----------------------------------------------------------
diff --git a/doc/html/CompilingGuidelineLinux.html b/doc/html/CompilingGuidelineLinux.html
new file mode 100644
index 00000000..a8460518
--- /dev/null
+++ b/doc/html/CompilingGuidelineLinux.html
@@ -0,0 +1,329 @@
+
+
+
+
+
+
+
+VeraCrypt - Free Open source disk encryption with strong security for the Paranoid
+
+
+
+
+
+
+
+This guide describes how to set up a Linux System that can compile the VeraCrypt. Further it is described how VeraCrypt is going to be compiled.
+The procedure for a Ubuntu 22.04 LTS system is described here as an example, but the procedure for other Linux systems is analogous.
+
+
+
+
+
+The following components are required for compiling VeraCrypt:
+
+
GNU Make
+
GNU C++ Compiler 4.0
+
YASM 1.3.0
+
pkg-config
+
wxWidgets 3.2 shared library and header files installed or wxWidgets 3.0 library source code
+
FUSE library and header files
+
+
+
+
+If you do not want to perform the single steps below, you can run these commands to build an environment and to compile VeraCrpyt:
+Download as script: Script
+
+sudo apt update
+sudo apt install -y build-essential yasm pkg-config libgtk-3-dev
+wget https://github.com/wxWidgets/wxWidgets/releases/download/v3.2.0/wxWidgets-3.2.0.tar.bz2
+tar -xf wxWidgets-3.2.0.tar.bz2
+cd wxWidgets-3.2.0
+mkdir gtk-build
+cd gtk-build
+../configure
+make
+sudo make install
+sudo ldconfig
+cd ../..
+rm -r wxWidgets-3.2.0
+rm wxWidgets-3.2.0.tar.bz2
+sudo apt install -y libfuse-dev git
+git clone https://github.com/veracrypt/VeraCrypt.git
+cd ~/VeraCrypt/src
+make
+
+
+ If you have not installed wxWidgets like described here, you may have to modify the make statement to reference to the right file:
+ make WXSTATIC=1
+
+
+ By default, a universal executable supporting both graphical and text user interface (through the switch --text) is built.
+ On Linux, a console-only executable, which requires no GUI library, can be built using the 'NOGUI' parameter:
+
+ make NOGUI=1 WXSTATIC=1 WX_ROOT=/usr/src/wxWidgets wxbuild
+ make NOGUI=1 WXSTATIC=1
+
+
+
+ Steps:
+
+
+ Open a terminal
+
+
+ Execute the following commands:
+
+ cd ~/VeraCrypt/src
+ make
+
+
+
+ If successful, the VeraCrypt executable should be located in the directory 'Main'.
+
+
+
+
+
+
+
+
diff --git a/doc/html/CompilingGuidelineWin.html b/doc/html/CompilingGuidelineWin.html
new file mode 100644
index 00000000..5b5554c2
--- /dev/null
+++ b/doc/html/CompilingGuidelineWin.html
@@ -0,0 +1,1231 @@
+
+
+
+
+
+
+
+VeraCrypt - Free Open source disk encryption with strong security for the Paranoid
+
+
+
+
+
+
+
+This guide describes how to set up a Windows system that can compile the VeraCrypt. Further it is described how VeraCrypt is going to be compiled.
+The procedure for a Windows 10 system is described here as an example, but the procedure for other Windows systems is analogous.
+
+
+
+The following components are required for compiling VeraCrypt:
+
+
+
+ Note: The content the official installer from Microsoft tries to download is no longer available. Therefore, it is necessary to use an offline installer.
+
+ Your browser might inform you that the file might be a security risk due to the low download rate or the unencrypted connection. Nevertheless, the official website is the most reliable source for this file, so we recommend to allow the download
+
+
+ Unzip the zip file and copy the files to “C:\Program Files\YASM”
+
+ Your browser might inform you that the file might be a security risk due to the low download rate or the unencrypted connection. Nevertheless, the official website is the most reliable source for this file, so we recommend to allow the download
+
+
+ Rename the file to “yasm.exe” and copy it to “C:\Program Files\YASM”
+
+
+ Add YASM to the path Variable and create a new system variable for YASM. This will make the command globally available on the command line.
+
+
+ Open a file explorer
+
+
+ Within the left file tree, please make a right click on "This PC" and select "Properties"
+
+
+
+ Within the right menu, please click on "Advanced system settings"
+
+
+
+ Please click on "Environment Variables"
+
+
+
+ Within the area of the system variables, please select the "Path" variable and click on "Edit..."
+
+
+
+ Click on "New" and add the following value:
+
C:\Program Files\YASM
+
+
+ Close the top window by clicking on "OK"
+
+
+ Within the area of the system variables, please click on "New..."
+
+
+ Visual C++ 1.52 is available via the paid Microsoft MSDN subscription. If you do not have a subscription, you download the ISO image via the internet archive:
+ https://archive.org/details/ms-vc152
+
+
+ Create the folder “C:\MSVC15”
+
+
+ Mount the ISO file and copy the content of the folder “MSVC” to “C:\MSVC15”
+
+
+ Create a system variable for Microsoft Visual C++ 1.52
+
+
+ Open a file explorer
+
+
+ Within the left file tree, please make a right click on "This PC" and select "Properties"
+
+
+
+ Within the right menu, please click on "Advanced system settings"
+
+
+
+ Please click on "Environment Variables"
+
+
+
+ Within the area of the system variables, please click on "New..."
+
+
+ The installer requires .Net Framework 4 (Not a newer one like .Net Framework 4.8!). Since a newer version is already preinstalled with Windows 10, the installer has to be tricked:
+
+
+ Click on the start button and search for: "regedit.msc". Start the first finding.
+
+
+ Navigate to "HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\NET Framework Setup\NDP\v4\"
+
+
+ Change the permissions for the "Client" folder, so you can edit the keys:
+
+
+ Right click on the subfolder "Client" and select "Permissions..."
+
+
+ Click on "Advanced"
+
+
+
+ Change the owner to your user and click on "Add"
+
+
+
+ Set the principal to your user, select "Full Control" and click on "OK"
+
+
+
+ Within the folder "Client" note down the value of the entry "Version"
+
+
+ Doubleclick on the entry "Version" and change the value to "4.0.30319"
+
+
+
+
+
+ Change the permissions for the "Full" folder, so you can edit the keys:
+
+
+ Right click on the subfolder "Full" and select "Permissions..."
+
+
+ Click on "Advanced"
+
+
+
+ Change the owner to your user and click on "Add"
+
+
+
+ Set the principal to your user, select "Full Control" and click on "OK"
+
+
+
+ Within the folder "Full" note down the value of the entry "Version"
+
+
+ Doubleclick on the entry "Version" and change the value to "4.0.30319"
+
+
+ Run the downloaded file as administrator and install the application with default settings
+
+
+ After the installation, revert the changes done in the registry editor.
+ Note: The owner "TrustedInstaller" can be restored by searching for: "NT Service\TrustedInstaller"
+
+ Mount the downloaded ISO file by doubleclicking it
+
+
+ Run the file "KitSetup.exe" as administrator. Within the installation select all features to be installed.
+ Note: It might be that during the installed you are requested to install the .NET Framework 3.5. In this case click on "Download and install this feature".
+
+
+ Install the Driver Kit to the default location
+
+ Run the downloaded file as administrator and install the WDK with default settings
+
+
+ At the end of the installation you will be asked, if you want to "install Windows Driver Kit Visual Studio extension".
+ Please make sure, that this option is selected before closing the dialog.
+
+
+ A different setup will start automatically and will detect Visual Studio Professional 2019 as possible tarket for the extension.
+ Please select it and proceed with the installation.
+
+ Please click on the green button with the label "Code" and download the code.
+ You can download the repository as zip file, but you may consider to use the git protocol in order to track changes.
+
+ Please open the file "src/VeraCrypt.sln" in Visual Studio 2010
+
+
+ Please select "All|Win32" as active configuration
+
+
+
+ Please click on "Build -> Build Solution"
+
+
+
+ The compiling process should end with warnings, but without errors. Some projects should be skipped.
+
+
+ Please select "All|x64" as active configuration
+
+
+
+ Please click on "Build -> Build Solution"
+
+
+
+ The compiling process should end with warnings, but without errors. Some projects should be skipped.
+ Please close Visual Studio 2010 after the compiling process finished
+
+ Please open the file "src/VeraCrypt_vs2019.sln" in Visual Studio 2019
+
+
+ Please select "All|ARM64" as active configuration
+
+
+
+ Please click on "Build -> Build Solution"
+
+
+
+ The compiling process should end with warnings, but without errors. One project should be skipped.
+ Please close Visual Studio 2019 after the compiling process finished
+
With the sign_test.bat script you just signed the VeraCrypt executables. This is necessary, since Windows only accepts drivers, which are trusted by a signed Certificate Authority.
+ Since you did not use the official VeraCrypt signing certificate to sign your code, but a public development version, you have to import and therefore trust the certifcates used.
+
+
+ Open the folder "src/Signing"
+
+
+ Import the following certificates to your Local Machine Certificate storage, by double clicking them:
+
+ This distribution package is damaged
+
+ On Windows 10 or higher you might get the error message above. It occurs, if the authenticode signature check fails.
+ Currently this check works incorrectly, so it might fail every time. A workaround is to skip the verification.
+ Please see https://sourceforge.net/p/veracrypt/discussion/technical/thread/83d5a2d6e8/ for further details.
+
+
+ Open the file "src/Common/Dlgcode.c"
+
+
+ Look for the function "VerifyModuleSignature"
+
+
+ Replace the following lines:
+ Find:
+
+ if (!IsOSAtLeast (WIN_10))
+ return TRUE;
+
+ Replace:
+
+ return TRUE;
+
+
+
+ Compile the VeraCrypt code again
+
+
+
+
+ Certificate failure
+
+ Windows validates the signature for every driver which is going to be installed.
+ This validation can fail during the installation process of VeraCrypt for two reasons:
+
+
+ The certificate used for signing is not trusted by Windows
+ You can verify if you are affected by checking the properties of the executable:
+
+
+ Make a right click on the VeraCrypt Setup executable: "src/Release/Setup Files/VeraCrypt Setup 1.XX.exe"
+
+
+ Click on properties
+
+
+ Go to the top menu "Digital Signatures". Her you will find two signatures in the Signature list
+
+ Check both by double clicking on it. If the headline says "The certificate in the signature cannot be verified", the corresponding signing certificate was not imported correctly.
+ Click on "View Certificate" and then on "Install Certificate..." to import the certificate to your certificate storage
+
+
+
+
+
+ The driver was modified after the signing process.
+ In this case, please use the script "src/Signing/sign_test.bat" to sign your code again with the test certificates
+
+
+
+
+
+
+
+
+
+
diff --git a/doc/html/CompilingGuidelineWin/AddNewSystemVar.jpg b/doc/html/CompilingGuidelineWin/AddNewSystemVar.jpg
new file mode 100644
index 00000000..8e4bded1
Binary files /dev/null and b/doc/html/CompilingGuidelineWin/AddNewSystemVar.jpg differ
diff --git a/doc/html/CompilingGuidelineWin/CertVerifyFails.jpg b/doc/html/CompilingGuidelineWin/CertVerifyFails.jpg
new file mode 100644
index 00000000..c7166ffa
Binary files /dev/null and b/doc/html/CompilingGuidelineWin/CertVerifyFails.jpg differ
diff --git a/doc/html/CompilingGuidelineWin/CertificateCannotBeVerified.jpg b/doc/html/CompilingGuidelineWin/CertificateCannotBeVerified.jpg
new file mode 100644
index 00000000..f5dc2f21
Binary files /dev/null and b/doc/html/CompilingGuidelineWin/CertificateCannotBeVerified.jpg differ
diff --git a/doc/html/CompilingGuidelineWin/DistributionPackageDamaged.jpg b/doc/html/CompilingGuidelineWin/DistributionPackageDamaged.jpg
new file mode 100644
index 00000000..e04f07c7
Binary files /dev/null and b/doc/html/CompilingGuidelineWin/DistributionPackageDamaged.jpg differ
diff --git a/doc/html/CompilingGuidelineWin/DownloadVS2010.jpg b/doc/html/CompilingGuidelineWin/DownloadVS2010.jpg
new file mode 100644
index 00000000..1e4ba165
Binary files /dev/null and b/doc/html/CompilingGuidelineWin/DownloadVS2010.jpg differ
diff --git a/doc/html/CompilingGuidelineWin/DownloadVS2019.jpg b/doc/html/CompilingGuidelineWin/DownloadVS2019.jpg
new file mode 100644
index 00000000..98428292
Binary files /dev/null and b/doc/html/CompilingGuidelineWin/DownloadVS2019.jpg differ
diff --git a/doc/html/CompilingGuidelineWin/DownloadVSBuildTools.jpg b/doc/html/CompilingGuidelineWin/DownloadVSBuildTools.jpg
new file mode 100644
index 00000000..37217733
Binary files /dev/null and b/doc/html/CompilingGuidelineWin/DownloadVSBuildTools.jpg differ
diff --git a/doc/html/CompilingGuidelineWin/NasmCommandLine.jpg b/doc/html/CompilingGuidelineWin/NasmCommandLine.jpg
new file mode 100644
index 00000000..d3a2f2f3
Binary files /dev/null and b/doc/html/CompilingGuidelineWin/NasmCommandLine.jpg differ
diff --git a/doc/html/CompilingGuidelineWin/RegeditPermissions-1.jpg b/doc/html/CompilingGuidelineWin/RegeditPermissions-1.jpg
new file mode 100644
index 00000000..46fcabbc
Binary files /dev/null and b/doc/html/CompilingGuidelineWin/RegeditPermissions-1.jpg differ
diff --git a/doc/html/CompilingGuidelineWin/RegeditPermissions-2.jpg b/doc/html/CompilingGuidelineWin/RegeditPermissions-2.jpg
new file mode 100644
index 00000000..5e3432cc
Binary files /dev/null and b/doc/html/CompilingGuidelineWin/RegeditPermissions-2.jpg differ
diff --git a/doc/html/CompilingGuidelineWin/RegeditPermissions-3.jpg b/doc/html/CompilingGuidelineWin/RegeditPermissions-3.jpg
new file mode 100644
index 00000000..7aa66aa0
Binary files /dev/null and b/doc/html/CompilingGuidelineWin/RegeditPermissions-3.jpg differ
diff --git a/doc/html/CompilingGuidelineWin/RegeditPermissions-4.jpg b/doc/html/CompilingGuidelineWin/RegeditPermissions-4.jpg
new file mode 100644
index 00000000..aa9f1c7b
Binary files /dev/null and b/doc/html/CompilingGuidelineWin/RegeditPermissions-4.jpg differ
diff --git a/doc/html/CompilingGuidelineWin/SelectAdvancedSystemSettings.jpg b/doc/html/CompilingGuidelineWin/SelectAdvancedSystemSettings.jpg
new file mode 100644
index 00000000..753840d5
Binary files /dev/null and b/doc/html/CompilingGuidelineWin/SelectAdvancedSystemSettings.jpg differ
diff --git a/doc/html/CompilingGuidelineWin/SelectEnvironmentVariables.jpg b/doc/html/CompilingGuidelineWin/SelectEnvironmentVariables.jpg
new file mode 100644
index 00000000..709589ba
Binary files /dev/null and b/doc/html/CompilingGuidelineWin/SelectEnvironmentVariables.jpg differ
diff --git a/doc/html/CompilingGuidelineWin/SelectPathVariable.jpg b/doc/html/CompilingGuidelineWin/SelectPathVariable.jpg
new file mode 100644
index 00000000..ef5aa44d
Binary files /dev/null and b/doc/html/CompilingGuidelineWin/SelectPathVariable.jpg differ
diff --git a/doc/html/CompilingGuidelineWin/SelectThisPC.jpg b/doc/html/CompilingGuidelineWin/SelectThisPC.jpg
new file mode 100644
index 00000000..439182d7
Binary files /dev/null and b/doc/html/CompilingGuidelineWin/SelectThisPC.jpg differ
diff --git a/doc/html/CompilingGuidelineWin/VS2010BuildSolution.jpg b/doc/html/CompilingGuidelineWin/VS2010BuildSolution.jpg
new file mode 100644
index 00000000..7870cb51
Binary files /dev/null and b/doc/html/CompilingGuidelineWin/VS2010BuildSolution.jpg differ
diff --git a/doc/html/CompilingGuidelineWin/VS2010Win32Config.jpg b/doc/html/CompilingGuidelineWin/VS2010Win32Config.jpg
new file mode 100644
index 00000000..f0be29b0
Binary files /dev/null and b/doc/html/CompilingGuidelineWin/VS2010Win32Config.jpg differ
diff --git a/doc/html/CompilingGuidelineWin/VS2010X64Config.jpg b/doc/html/CompilingGuidelineWin/VS2010X64Config.jpg
new file mode 100644
index 00000000..b8d989a2
Binary files /dev/null and b/doc/html/CompilingGuidelineWin/VS2010X64Config.jpg differ
diff --git a/doc/html/CompilingGuidelineWin/VS2019ARM64Config.jpg b/doc/html/CompilingGuidelineWin/VS2019ARM64Config.jpg
new file mode 100644
index 00000000..825079da
Binary files /dev/null and b/doc/html/CompilingGuidelineWin/VS2019ARM64Config.jpg differ
diff --git a/doc/html/CompilingGuidelineWin/VS2019BuildSolution.jpg b/doc/html/CompilingGuidelineWin/VS2019BuildSolution.jpg
new file mode 100644
index 00000000..015ab357
Binary files /dev/null and b/doc/html/CompilingGuidelineWin/VS2019BuildSolution.jpg differ
diff --git a/doc/html/CompilingGuidelineWin/YasmCommandLine.jpg b/doc/html/CompilingGuidelineWin/YasmCommandLine.jpg
new file mode 100644
index 00000000..9b414160
Binary files /dev/null and b/doc/html/CompilingGuidelineWin/YasmCommandLine.jpg differ
diff --git a/doc/html/CompilingGuidelineWin/gzipCommandLine.jpg b/doc/html/CompilingGuidelineWin/gzipCommandLine.jpg
new file mode 100644
index 00000000..958f3f6a
Binary files /dev/null and b/doc/html/CompilingGuidelineWin/gzipCommandLine.jpg differ
diff --git a/doc/html/CompilingGuidelineWin/upxCommandLine.jpg b/doc/html/CompilingGuidelineWin/upxCommandLine.jpg
new file mode 100644
index 00000000..cb0af820
Binary files /dev/null and b/doc/html/CompilingGuidelineWin/upxCommandLine.jpg differ
diff --git a/doc/html/Documentation.html b/doc/html/Documentation.html
index f9315c22..0466abe4 100644
--- a/doc/html/Documentation.html
+++ b/doc/html/Documentation.html
@@ -1,5 +1,52 @@
+
+
+
@@ -29,119 +76,335 @@
Table of Contents
This documentation is not guaranteed to be error-free and is provided "as is" without warranty of any kind. For more information, see
Disclaimers.
-
diff --git a/src/Readme.txt b/src/Readme.txt
index 807d7b4b..6875547d 100644
--- a/src/Readme.txt
+++ b/src/Readme.txt
@@ -18,8 +18,6 @@ Contents
========
I. Windows
- Requirements for Building VeraCrypt for Windows.
- Instructions for Building VeraCrypt for Windows.
Instructions for Signing and Packaging VeraCrypt for Windows.
II. Linux and Mac OS X
@@ -43,16 +41,7 @@ I. Windows
Requirements for Building VeraCrypt for Windows:
------------------------------------------------
-- Microsoft Visual C++ 2010 SP1 (Professional Edition or compatible)
-- Microsoft Visual C++ 2019
-- Microsoft Visual C++ 1.52 (available from MSDN Subscriber Downloads)
-- Microsoft Windows SDK for Windows 7.1 (configured for Visual C++ 2010)
-- Microsoft Windows SDK for Windows 8.1 (needed for SHA-256 code signing)
-- Microsoft Windows Driver Kit 7.1.0 (build 7600.16385.1)
-- NASM assembler 2.08 or compatible
-- YASM 1.3.0 or newer.
-- gzip compressor
-- upx packer (available at https://upx.github.io/)
+A detailed guide on how to compile VeraCrypt on Windows can be found at: https://www.veracrypt.fr/en/CompilingGuidelineWin.html
IMPORTANT:
@@ -74,41 +63,6 @@ the compiler, or if you install a different or no service pack for Visual
Studio, or different hotfixes for it, or if you use different versions of
the required SDKs).
-
-Instructions for Building VeraCrypt for Windows:
-------------------------------------------------
-
-1) Create an environment variable 'MSVC16_ROOT' pointing to the folder 'MSVC15'
- extracted from the Visual C++ 1.52 self-extracting package.
-
- Note: The 16-bit installer MSVC15\SETUP.EXE cannot be run on 64-bit Windows,
- but it is actually not necessary to run it. You only need to extract the
- folder 'MSVC15', which contains the 32-bit binaries required to build the
- VeraCrypt Boot Loader.
-
-2) If you have installed the Windows Driver Development Kit in another
- directory than '%SYSTEMDRIVE%\WinDDK', create an environment variable
- 'WINDDK_ROOT' pointing to the DDK installation directory.
-
-3) Open the solution file 'VeraCrypt.sln' in Microsoft Visual Studio 2010.
-
-4) Select 'All' as the active solution configuration and WIN32 as the active
- platform.
-
-5) Build the solution.
-
-6) Select x64 as the active platform and build the solution again.
-
-7) Open the solution file 'VeraCrypt_vs2019.sln' in Microsoft Visual Studio 2019.
-
-8) Select 'All' as the active solution configuration and ARM64 as the active
- platform.
-
-9) Build the solution.
-
-6) If successful, there should be newly built VeraCrypt binaries in the
- 'Release\Setup Files' folder.
-
Instructions for Signing and Packaging VeraCrypt for Windows:
-------------------------------------------------------------
@@ -136,6 +90,8 @@ For build instructions, please refer to the file src\Boot\EFI\Readme.txt.
II. Linux and Mac OS X
======================
+A detailed guide on how to build a dev environment and on how to compile VeraCrypt on Linux can be found at: https://www.veracrypt.fr/en/CompilingGuidelineLinux.html
+
Requirements for Building VeraCrypt for Linux and Mac OS X:
-----------------------------------------------------------
--
cgit v1.2.3