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 024ae2a465.

* Correction of a div box
This commit is contained in:
Felix Reichmann 2022-08-16 08:21:55 +02:00 committed by GitHub
parent 0871695403
commit cc5212fdb1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
31 changed files with 1962 additions and 258 deletions

View File

@ -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:
-----------------------------------------------------------

View File

@ -0,0 +1,329 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<style>
.textbox {
vertical-align: top;
height: auto !important;
font-family: Helvetica,sans-serif;
font-size: 20px;
font-weight: bold;
margin: 10px;
padding: 10px;
background-color: white;
width: auto;
border-radius: 10px;
}
.texttohide {
display:none;
font-family: Helvetica,sans-serif;
font-size: 14px;
font-weight: normal;
}
.show {
display: none;
text-decoration: none;
}
.hide:target + .show {
display: inline;
text-decoration: none;
}
.hide:target {
display: none;
text-decoration: none;
}
.hide:target ~ .texttohide {
display:inline;
text-decoration: none;
}
@media print {
.hide, .show {
display: none;
}
}
</style>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>VeraCrypt - Free Open source disk encryption with strong security for the Paranoid</title>
<meta name="description" content="VeraCrypt is free open-source disk encryption software for Windows, Mac OS X and Linux. In case an attacker forces you to reveal the password, VeraCrypt provides plausible deniability. In contrast to file encryption, data encryption performed by VeraCrypt is real-time (on-the-fly), automatic, transparent, needs very little memory, and does not involve temporary unencrypted files."/>
<meta name="keywords" content="encryption, security"/>
<link href="styles.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div>
<a href="Documentation.html"><img src="VeraCrypt128x128.png" alt="VeraCrypt"/></a>
</div>
<div id="menu">
<ul>
<li><a href="Home.html">Home</a></li>
<li><a href="/code/">Source Code</a></li>
<li><a href="Downloads.html">Downloads</a></li>
<li><a class="active" href="Documentation.html">Documentation</a></li>
<li><a href="Donation.html">Donate</a></li>
<li><a href="https://sourceforge.net/p/veracrypt/discussion/" target="_blank">Forums</a></li>
</ul>
</div>
<div>
<p>
<a href="Documentation.html">Documentation</a>
<img src="arrow_right.gif" alt=">>" style="margin-top: 5px">
<a href="CompilingGuidelineLinux.html">Compiling Gudineline for Linux</a>
</p></div>
<div class="wikidoc">
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. <br>
The procedure for a Ubuntu 22.04 LTS system is described here as an example, but the procedure for other Linux systems is analogous.
</div>
<div class="wikidoc">
<br>
<br>
The following components are required for compiling VeraCrypt:
<ol>
<li>GNU Make</li>
<li>GNU C++ Compiler 4.0</li>
<li>YASM 1.3.0</li>
<li>pkg-config</li>
<li>wxWidgets 3.2 shared library and header files installed or wxWidgets 3.0 library source code </li>
<li>FUSE library and header files</li>
</ol>
</div>
<div class="wikidoc">
If you do not want to perform the single steps below, you can run these commands to build an environment and to compile VeraCrpyt: <br>
Download as script: <a href="LinuxPrepAndBuild.sh" target="_blank">Script</a> <br>
<code>
sudo apt update <br>
sudo apt install -y build-essential yasm pkg-config libgtk-3-dev <br>
wget https://github.com/wxWidgets/wxWidgets/releases/download/v3.2.0/wxWidgets-3.2.0.tar.bz2 <br>
tar -xf wxWidgets-3.2.0.tar.bz2 <br>
cd wxWidgets-3.2.0 <br>
mkdir gtk-build <br>
cd gtk-build <br>
../configure <br>
make <br>
sudo make install <br>
sudo ldconfig <br>
cd ../.. <br>
rm -r wxWidgets-3.2.0 <br>
rm wxWidgets-3.2.0.tar.bz2 <br>
sudo apt install -y libfuse-dev git <br>
git clone https://github.com/veracrypt/VeraCrypt.git
cd ~/VeraCrypt/src <br>
make
</code>
</div>
<div class="wikidoc">
<div class="textbox" id="InstallationOfGNUMake">
<a href="#hide1" class="hide" id="hide1">Installation of GNU Make</a>
<a href="#show1" class="show" id="show1">Installation of GNU Make</a>
<div class="texttohide">
<p>
<ol>
<li>
Open a terminal
</li>
<li>
Execute the following commands: <br>
<code>
sudo apt update <br>
sudo apt install build-essential
</code>
</li>
</ol>
</p>
</div>
</div>
<div class="textbox" id="InstallationOfGNUCompiler">
<a href="#hide2" class="hide" id="hide2">Installation of GNU C++ Compiler 4.0</a>
<a href="#show2" class="show" id="show2">Installation of GNU C++ Compiler 4.0</a>
<div class="texttohide">
<p> If the build-essential were already installed in the step before, this step can be skipped.
<ol>
<li>
Open a terminal
</li>
<li>
Execute the following commands: <br>
<code>
sudo apt update <br>
sudo apt install build-essential
</code>
</li>
</ol>
</p>
</div>
</div>
<div class="textbox" id="InstallationOfYASM">
<a href="#hide3" class="hide" id="hide3">Installation of YASM</a>
<a href="#show3" class="show" id="show3">Installation of YASM</a>
<div class="texttohide">
<p>
<ol>
<li>
Open a terminal
</li>
<li>
Execute the following commands: <br>
<code>
sudo apt update <br>
sudo apt install yasm
</code>
</li>
</ol>
</p>
</div>
</div>
<div class="textbox" id="InstallationOfPKGConfig">
<a href="#hide4" class="hide" id="hide4">Installation of pkg-config</a>
<a href="#show4" class="show" id="show4">Installation of pkg-config</a>
<div class="texttohide">
<p>
<ol>
<li>
Open a terminal
</li>
<li>
Execute the following commands: <br>
<code>
sudo apt update <br>
sudo apt install pkg-config
</code>
</li>
</ol>
</p>
</div>
</div>
<div class="textbox" id="InstallationOfwxWidgets">
<a href="#hide5" class="hide" id="hide5">Installation of wxWidgets 3.2</a>
<a href="#show5" class="show" id="show5">Installation of wxWidgets 3.2</a>
<div class="texttohide">
<p>
<ol>
<li>
Open a terminal
</li>
<li>
Execute the following commands: <br>
<code>
sudo apt install libgtk-3-dev <br>
wget https://github.com/wxWidgets/wxWidgets/releases/download/v3.2.0/wxWidgets-3.2.0.tar.bz2 <br>
tar -xf wxWidgets-3.2.0.tar.bz2 <br>
cd wxWidgets-3.2.0 <br>
mkdir gtk-build <br>
cd gtk-build <br>
../configure <br>
make <br>
sudo make install <br>
sudo ldconfig <br>
cd ../.. <br>
rm -r wxWidgets-3.2.0 <br>
</code>
</li>
</ol>
</p>
</div>
</div>
<div class="textbox" id="InstallationOfFuse">
<a href="#hide6" class="hide" id="hide6">Installation of libfuse</a>
<a href="#show6" class="show" id="show6">Installation of libfuse</a>
<div class="texttohide">
<p>
<ol>
<li>
Open a terminal
</li>
<li>
Execute the following commands: <br>
<code>
sudo apt update <br>
sudo apt install libfuse-dev
</code>
</li>
</ol>
</p>
</div>
</div>
<div class="textbox" id="DownloadVeraCrypt">
<a href="#hide7" class="hide" id="hide7">Download VeraCrypt</a>
<a href="#show7" class="show" id="show7">Download VeraCrypt</a>
<div class="texttohide">
<p>
<ol>
<li>
Open a terminal
</li>
<li>
Execute the following commands: <br>
<code>
sudo apt update <br>
sudo apt install git <br>
git clone https://github.com/veracrypt/VeraCrypt.git
</code>
</li>
</ol>
</p>
</div>
</div>
<div class="textbox" id="CompileVeraCrypt">
<a href="#hide8" class="hide" id="hide8">Compile VeraCrypt</a>
<a href="#show8" class="show" id="show8">Compile VeraCrypt</a>
<div class="texttohide">
<p> Remarks: <br>
<ul>
<li>
If you have not installed wxWidgets like described here, you may have to modify the make statement to reference to the right file: <br>
<code>make WXSTATIC=1</code>
</li>
<li>
By default, a universal executable supporting both graphical and text user interface (through the switch --text) is built. <br>
On Linux, a console-only executable, which requires no GUI library, can be built using the 'NOGUI' parameter: <br>
<code>
make NOGUI=1 WXSTATIC=1 WX_ROOT=/usr/src/wxWidgets wxbuild <br>
make NOGUI=1 WXSTATIC=1
</code>
</li>
</ul>
Steps:
<ol>
<li>
Open a terminal
</li>
<li>
Execute the following commands: <br>
<code>
cd ~/VeraCrypt/src <br>
make
</code>
</li>
<li>
If successful, the VeraCrypt executable should be located in the directory 'Main'.
</li>
</ol>
</p>
</div>
</div>
</div>
</body></html>

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 69 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 85 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 164 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 226 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 183 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 81 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 47 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 139 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 58 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 164 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 146 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 57 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 52 KiB

View File

@ -1,5 +1,52 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<style>
.textbox {
vertical-align: top;
height: auto !important;
font-weight: bold;
padding: 5px;
width: auto;
border-radius: 10px;
}
.texttohide {
display:none;
font-family: Helvetica,sans-serif;
font-size: 14px;
font-weight: normal;
}
.show {
display: none;
text-decoration: none;
}
.hide:target + .show {
display: inline;
text-decoration: none;
}
.hide:target {
display: none;
text-decoration: none;
}
.hide:target ~ .texttohide {
display:inline;
text-decoration: none;
}
@media print {
.hide, .show {
display: none;
}
}
</style>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
@ -29,119 +76,335 @@
<h1>Table of Contents</h1>
<p><em style="text-align:left">This documentation is not guaranteed to be error-free and is provided &quot;as is&quot; without warranty of any kind. For more information, see
<a href="Disclaimers.html">Disclaimers</a>.</em></p>
<ul>
<li><a title="Preface" href="Preface.html"><strong>Preface</strong></a>
</li><li><strong><a href="Introduction.html">Introduction</a></strong>
</li><li><strong><a href="Beginner%27s%20Tutorial.html">Beginner's Tutorial</a></strong>
</li><li><strong><a href="VeraCrypt%20Volume.html">VeraCrypt Volume</a></strong>
<ul>
<li><a href="Creating%20New%20Volumes.html">Creating a New VeraCrypt Volume</a>
</li><li><a href="Favorite%20Volumes.html">Favorite Volumes</a>
</li><li><a href="System%20Favorite%20Volumes.html">System Favorite Volumes</a>
</li></ul>
</li><li><strong><a href="System%20Encryption.html">System Encryption</a></strong>
<ul>
<li><a href="Hidden%20Operating%20System.html">Hidden Operating System</a>
</li><li><a href="Supported%20Systems%20for%20System%20Encryption.html">Operating Systems Supported for System Encryption</a>
</li><li><a href="VeraCrypt%20Rescue%20Disk.html">VeraCrypt Rescue Disk</a>
</li></ul>
</li><li><strong><a href="Plausible%20Deniability.html">Plausible Deniability</a></strong><br>
<ul>
<li><a href="Hidden%20Volume.html">Hidden Volume</a>
<ul>
<li><a href="Protection%20of%20Hidden%20Volumes.html">Protection of Hidden Volumes Against Damage</a>
</li><li><a href="Security%20Requirements%20for%20Hidden%20Volumes.html">Security Requirements and Precautions Pertaining to Hidden Volumes</a>
</li></ul>
</li><li><a href="VeraCrypt%20Hidden%20Operating%20System.html">Hidden Operating System</a>
</li></ul>
</li><li><strong><a href="Main%20Program%20Window.html">Main Program Window</a></strong>
<ul>
<li><a href="Program%20Menu.html">Program Menu</a>
</li><li><a href="Mounting%20VeraCrypt%20Volumes.html">Mounting Volumes</a>
</li></ul>
</li><li><strong><a href="Parallelization.html">Parallelization</a></strong>
</li><li><strong><a href="Pipelining.html">Pipelining</a></strong>
</li><li><strong><a href="Hardware%20Acceleration.html">Hardware acceleration</a></strong>
</li><li><strong><a href="Hot%20Keys.html">Hot keys</a></strong>
</li><li><strong><a href="Keyfiles%20in%20VeraCrypt.html">Keyfiles</a></strong>
</li><li><strong><a href="Security%20Tokens%20%26%20Smart%20Cards.html">Security Tokens &amp; Smart Cards</a></strong>
</li><li><strong><a href="Portable%20Mode.html">Portable Mode</a></strong>
</li><li><strong><a href="TrueCrypt%20Support.html">TrueCrypt Support</a></strong>
</li><li><strong><a href="Converting%20TrueCrypt%20volumes%20and%20partitions.html">Converting TrueCrypt Volumes &amp; Partitions</a></strong>
</li><li><strong><a href="Default%20Mount%20Parameters.html">Default Mount Parameters</a></strong>
</li><li><strong><a href="Language%20Packs.html">Language Packs</a></strong>
</li><li><strong><a href="Encryption%20Algorithms.html">Encryption Algorithms</a></strong>
<ul>
<li><a href="AES.html">AES</a> </li><li><a href="Camellia.html">Camellia</a>
</li><li><a href="Kuznyechik.html">Kuznyechik</a>
</li><li><a href="Serpent.html">Serpent</a> </li><li><a href="Twofish.html">Twofish</a> </li><li><a href="Cascades.html">Cascades of ciphers</a>
</li></ul>
</li><li><strong><a href="Hash%20Algorithms.html">Hash Algorithms</a></strong>
<ul>
<li><a href="BLAKE2s-256.html">BLAKE2s-256</a>
</li><li><a href="SHA-256.html">SHA-256</a> </li><li><a href="SHA-512.html">SHA-512</a> </li><li><a href="Whirlpool.html">Whirlpool</a>
</li><li><a href="Streebog.html">Streebog</a></li></ul>
</li><li><strong><a href="Supported%20Operating%20Systems.html">Supported Operating Systems</a></strong>
</li><li><strong><a href="Command%20Line%20Usage.html">Command Line Usage</a></strong>
</li><li><strong><a href="Security%20Model.html">Security Model</a></strong>
</li><li><strong><a href="Security%20Requirements%20and%20Precautions.html">Security Requirements And Precautions<br>
</a></strong>
<ul>
<li><a href="Data%20Leaks.html">Data Leaks</a>
<ul>
<li><a href="Paging%20File.html">Paging File</a>
</li><li><a href="Memory%20Dump%20Files.html">Memory Dump Files</a>
</li><li><a href="Hibernation%20File.html">Hibernation File</a>
</li></ul>
</li><li><a href="Unencrypted%20Data%20in%20RAM.html">Unencrypted Data in RAM</a>
</li><li><a href="Physical%20Security.html">Physical Security</a>
</li><li><a href="Malware.html">Malware</a> </li><li><a href="Multi-User%20Environment.html">Multi-User Environment</a>
</li><li><a href="Authenticity%20and%20Integrity.html">Authenticity and Integrity</a>
</li><li><a href="Choosing%20Passwords%20and%20Keyfiles.html">Choosing Passwords and Keyfiles</a>
</li><li><a href="Changing%20Passwords%20and%20Keyfiles.html">Changing Passwords and Keyfiles</a>
</li><li><a href="Trim%20Operation.html">Trim Operation</a>
</li><li><a href="Wear-Leveling.html">Wear-Leveling</a>
</li><li><a href="Reallocated%20Sectors.html">Reallocated Sectors</a>
</li><li><a href="Defragmenting.html">Defragmenting</a>
</li><li><a href="Journaling%20File%20Systems.html">Journaling File Systems</a>
</li><li><a href="Volume%20Clones.html">Volume Clones</a>
</li><li><a href="Additional%20Security%20Requirements%20and%20Precautions.html">Additional Security Requirements and Precautions</a>
</li></ul>
</li><li><strong><a href="How%20to%20Back%20Up%20Securely.html">How To Back Up Securely</a></strong>
</li><li><strong><a href="Miscellaneous.html">Miscellaneous</a></strong>
<ul>
<li><a href="Using%20VeraCrypt%20Without%20Administrator%20Privileges.html">Using VeraCrypt Without Administrator Privileges</a>
</li><li><a href="Sharing%20over%20Network.html">Sharing Over Network</a>
</li><li><a href="VeraCrypt%20Background%20Task.html">VeraCrypt Background Task</a>
</li><li><a href="Removable%20Medium%20Volume.html">Volume Mounted as Removable Medium</a>
</li><li><a href="VeraCrypt%20System%20Files.html">VeraCrypt System Files &amp; Application Data</a>
</li><li><a href="Removing%20Encryption.html">How To Remove Encryption</a>
</li><li><a href="Uninstalling%20VeraCrypt.html">Uninstalling VeraCrypt</a>
</li><li><a href="Digital%20Signatures.html">Digital Signatures</a>
</li></ul>
</li><li><strong><a href="Troubleshooting.html">Troubleshooting</a></strong>
</li><li><strong><a href="Incompatibilities.html">Incompatibilities</a></strong>
</li><li><strong><a href="Issues%20and%20Limitations.html">Known Issues and Limitations</a></strong>
</li><li><strong><a href="FAQ.html">Frequently Asked Questions</a></strong>
</li><li><strong><a href="Technical%20Details.html">Technical Details</a></strong>
<ul>
<li><a href="Notation.html">Notation</a>
</li><li><a href="Encryption%20Scheme.html">Encryption Scheme</a>
</li><li><a href="Modes%20of%20Operation.html">Modes of Operation</a>
</li><li><a href="Header%20Key%20Derivation.html">Header Key Derivation, Salt, and Iteration Count</a>
</li><li><a href="Random%20Number%20Generator.html">Random Number Generator</a>
</li><li><a href="Keyfiles.html">Keyfiles</a>
</li><li><a title="PIM" href="Personal%20Iterations%20Multiplier%20(PIM).html">PIM</a>
</li><li><a href="VeraCrypt%20Volume%20Format%20Specification.html">VeraCrypt Volume Format Specification</a>
</li><li><a href="Standard%20Compliance.html">Compliance with Standards and Specifications</a>
</li><li><a href="Source%20Code.html">Source Code</a>
</li></ul>
</li><li><strong><a href="Contact.html">Contact</a></strong>
</li><li><strong><a href="Legal%20Information.html">Legal Information</a></strong>
</li><li><strong><a href="Release%20Notes.html">Version History</a></strong>
</li><li><strong><a href="Acknowledgements.html">Acknowledgements</a></strong>
</li><li><strong><a href="References.html">References</a></strong>
</li></ul>
<a title="Preface" href="Preface.html"><strong>Preface</strong></a> <br>
<a href="Introduction.html"><strong>Introduction</strong></a>
<div class="wikidoc">
<div class="textbox" id="EndUserGuides">
<a href="#hide1" class="hide" id="hide1">&#9654; &nbsp; End-User Guidelines and Information</a>
<a href="#show1" class="show" id="show1">&#9660; &nbsp; End-User Guidelines and Information</a>
<div class="texttohide">
<ul>
<li>
<strong><a href="Beginner%27s%20Tutorial.html">Beginner's Tutorial</a></strong>
</li>
<li>
<strong><a href="Main%20Program%20Window.html">Main Program Window</a></strong>
<ul>
<li>
<a href="Program%20Menu.html">Program Menu</a>
</li>
<li>
<a href="Mounting%20VeraCrypt%20Volumes.html">Mounting Volumes</a>
</li>
</ul>
</li>
<li>
<strong><a href="Portable%20Mode.html">Portable Mode</a></strong>
</li>
<li>
<strong><a href="Language%20Packs.html">Language Packs</a></strong>
</li>
<li>
<strong><a href="Supported%20Operating%20Systems.html">Supported Operating Systems</a></strong>
</li>
<li>
<strong><a href="How%20to%20Back%20Up%20Securely.html">How To Back Up Securely</a></strong>
</li>
<li>
<strong><a href="Using%20VeraCrypt%20Without%20Administrator%20Privileges.html">Using VeraCrypt Without Administrator Privileges</a></strong>
</li>
<li>
<strong><a href="Sharing%20over%20Network.html">Sharing Over Network</a></strong>
</li>
<li>
<strong><a href="VeraCrypt%20Background%20Task.html">VeraCrypt Background Task</a></strong>
</li>
<li>
<strong><a href="Removable%20Medium%20Volume.html">Volume Mounted as Removable Medium</a></strong>
</li>
<li>
<strong><a href="Removing%20Encryption.html">How To Remove Encryption</a></strong>
</li>
<li>
<strong><a href="Uninstalling%20VeraCrypt.html">Uninstalling VeraCrypt</a></strong>
</li>
</ul>
</div>
</div>
<div class="wikidoc">
<div class="textbox" id="SoftwareDevGuidelines">
<a href="#hide2" class="hide" id="hide2">&#9654; &nbsp; Software Development Guidelines</a>
<a href="#show2" class="show" id="show2">&#9660; &nbsp; Software Development Guidelines</a>
<div class="texttohide">
<ul>
<li>
<strong><a href="CompilingGuidelineWin.html">Windows Compiling Guideline</a></strong>
</li>
<li>
<strong><a href="CompilingGuidelineLinux.html">Linux Compiling Guideline</a></strong>
</li>
</ul>
</div>
</div>
<div class="wikidoc">
<div class="textbox" id="TechnicalDetails">
<a href="#hide3" class="hide" id="hide3">&#9654; &nbsp; Technical Details</a>
<a href="#show3" class="show" id="show3">&#9660; &nbsp; Technical Details</a>
<div class="texttohide">
<ul>
<li>
<strong><a href="VeraCrypt%20Volume.html">VeraCrypt Volume</a></strong>
<ul>
<li>
<a href="Creating%20New%20Volumes.html">Creating a New VeraCrypt Volume</a>
</li>
<li>
<a href="Favorite%20Volumes.html">Favorite Volumes</a>
</li>
<li>
<a href="System%20Favorite%20Volumes.html">System Favorite Volumes</a>
</li>
</ul>
</li>
<li>
<strong><a href="System%20Encryption.html">System Encryption</a></strong>
<ul>
<li>
<a href="Hidden%20Operating%20System.html">Hidden Operating System</a>
</li>
<li>
<a href="Supported%20Systems%20for%20System%20Encryption.html">Operating Systems Supported for System Encryption</a>
</li>
<li>
<a href="VeraCrypt%20Rescue%20Disk.html">VeraCrypt Rescue Disk</a>
</li>
</ul>
</li>
<li>
<strong><a href="Plausible%20Deniability.html">Plausible Deniability</a></strong><br>
<ul>
<li>
<a href="Hidden%20Volume.html">Hidden Volume</a>
<ul>
<li>
<a href="Protection%20of%20Hidden%20Volumes.html">Protection of Hidden Volumes Against Damage</a>
</li>
<li>
<a href="Security%20Requirements%20for%20Hidden%20Volumes.html">Security Requirements and Precautions Pertaining to Hidden Volumes</a>
</li>
</ul>
</li>
<li>
<a href="VeraCrypt%20Hidden%20Operating%20System.html">Hidden Operating System</a>
</li>
</ul>
</li>
<li>
<strong><a href="Encryption%20Algorithms.html">Encryption Algorithms</a></strong>
<ul>
<li>
<a href="AES.html">AES</a> </li><li><a href="Camellia.html">Camellia</a>
</li>
<li>
<a href="Kuznyechik.html">Kuznyechik</a>
</li>
<li>
<a href="Serpent.html">Serpent</a>
</li>
<li>
<a href="Twofish.html">Twofish</a>
</li>
<li>
<a href="Cascades.html">Cascades of ciphers</a>
</li>
</ul>
</li>
<li>
<strong><a href="Hash%20Algorithms.html">Hash Algorithms</a></strong>
<ul>
<li>
<a href="BLAKE2s-256.html">BLAKE2s-256</a>
</li>
<li>
<a href="SHA-256.html">SHA-256</a>
</li>
<li>
<a href="SHA-512.html">SHA-512</a>
</li>
<li>
<a href="Whirlpool.html">Whirlpool</a>
</li>
<li>
<a href="Streebog.html">Streebog</a>
</li>
</ul>
</li>
<li>
<strong><a href="Security%20Requirements%20and%20Precautions.html">Security Requirements And Precautions<br> </a></strong>
<ul>
<li>
<a href="Data%20Leaks.html">Data Leaks</a>
<ul>
<li>
<a href="Paging%20File.html">Paging File</a>
</li>
<li>
<a href="Memory%20Dump%20Files.html">Memory Dump Files</a>
</li>
<li>
<a href="Hibernation%20File.html">Hibernation File</a>
</li>
</ul>
</li>
<li>
<a href="Unencrypted%20Data%20in%20RAM.html">Unencrypted Data in RAM</a>
</li>
<li>
<a href="Physical%20Security.html">Physical Security</a>
</li>
<li>
<a href="Malware.html">Malware</a>
</li>
<li>
<a href="Multi-User%20Environment.html">Multi-User Environment</a>
</li>
<li>
<a href="Authenticity%20and%20Integrity.html">Authenticity and Integrity</a>
</li>
<li>
<a href="Choosing%20Passwords%20and%20Keyfiles.html">Choosing Passwords and Keyfiles</a>
</li>
<li>
<a href="Changing%20Passwords%20and%20Keyfiles.html">Changing Passwords and Keyfiles</a>
</li>
<li>
<a href="Trim%20Operation.html">Trim Operation</a>
</li>
<li>
<a href="Wear-Leveling.html">Wear-Leveling</a>
</li>
<li>
<a href="Reallocated%20Sectors.html">Reallocated Sectors</a>
</li>
<li>
<a href="Defragmenting.html">Defragmenting</a>
</li>
<li>
<a href="Journaling%20File%20Systems.html">Journaling File Systems</a>
</li>
<li>
<a href="Volume%20Clones.html">Volume Clones</a>
</li>
<li>
<a href="Additional%20Security%20Requirements%20and%20Precautions.html">Additional Security Requirements and Precautions</a>
</li>
</ul>
</li>
<li>
<strong><a href="Parallelization.html">Parallelization</a></strong>
</li>
<li>
<strong><a href="Pipelining.html">Pipelining</a></strong>
</li>
<li>
<strong><a href="Hardware%20Acceleration.html">Hardware acceleration</a></strong>
</li>
<li>
<strong><a href="Hot%20Keys.html">Hot keys</a></strong>
</li>
<li>
<strong><a href="Keyfiles%20in%20VeraCrypt.html">Keyfiles</a></strong>
</li>
<li>
<strong><a href="Security%20Tokens%20%26%20Smart%20Cards.html">Security Tokens &amp; Smart Cards</a></strong>
</li>
<li>
<strong><a href="TrueCrypt%20Support.html">TrueCrypt Support</a></strong>
</li>
<li>
<strong><a href="Converting%20TrueCrypt%20volumes%20and%20partitions.html">Converting TrueCrypt Volumes &amp; Partitions</a></strong>
</li>
<li>
<strong><a href="Default%20Mount%20Parameters.html">Default Mount Parameters</a></strong>
</li>
<li>
<strong><a href="Command%20Line%20Usage.html">Command Line Usage</a></strong>
</li>
<li>
<strong><a href="Security%20Model.html">Security Model</a></strong>
</li>
<li>
<strong><a href="Technical%20Details.html">Technical Details</a></strong>
<ul>
<li>
<a href="Notation.html">Notation</a>
</li>
<li>
<a href="Encryption%20Scheme.html">Encryption Scheme</a>
</li>
<li>
<a href="Modes%20of%20Operation.html">Modes of Operation</a>
</li>
<li>
<a href="Header%20Key%20Derivation.html">Header Key Derivation, Salt, and Iteration Count</a>
</li>
<li>
<a href="Random%20Number%20Generator.html">Random Number Generator</a>
</li>
<li>
<a href="Keyfiles.html">Keyfiles</a>
</li>
<li>
<a title="PIM" href="Personal%20Iterations%20Multiplier%20(PIM).html">PIM</a>
</li>
<li>
<a href="VeraCrypt%20Volume%20Format%20Specification.html">VeraCrypt Volume Format Specification</a>
</li>
<li>
<a href="Standard%20Compliance.html">Compliance with Standards and Specifications</a>
</li>
<li>
<a href="Source%20Code.html">Source Code</a>
</li>
</ul>
</li>
<li>
<strong><a href="VeraCrypt%20System%20Files.html">VeraCrypt System Files &amp; Application Data</a></strong>
</li>
<li>
<strong><a href="Digital%20Signatures.html">Digital Signatures</a></strong>
</li>
</ul>
</div>
</div>
</div>
<strong><a href="Troubleshooting.html">Troubleshooting</a></strong> <br>
<strong><a href="Incompatibilities.html">Incompatibilities</a></strong> <br>
<strong><a href="Issues%20and%20Limitations.html">Known Issues and Limitations</a></strong> <br>
<strong><a href="FAQ.html">Frequently Asked Questions</a></strong> <br>
<strong><a href="Contact.html">Contact</a></strong> <br>
<strong><a href="Legal%20Information.html">Legal Information</a></strong> <br>
<strong><a href="Release%20Notes.html">Version History</a></strong> <br>
<strong><a href="Acknowledgements.html">Acknowledgements</a></strong> <br>
<strong><a href="References.html">References</a></strong> <br>
</body></html>

View File

@ -0,0 +1,20 @@
#!/bin/bash
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

View File

@ -1,48 +0,0 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>VeraCrypt - Free Open source disk encryption with strong security for the Paranoid</title>
<meta name="description" content="VeraCrypt is free open-source disk encryption software for Windows, Mac OS X and Linux. In case an attacker forces you to reveal the password, VeraCrypt provides plausible deniability. In contrast to file encryption, data encryption performed by VeraCrypt is real-time (on-the-fly), automatic, transparent, needs very little memory, and does not involve temporary unencrypted files."/>
<meta name="keywords" content="encryption, security"/>
<link href="styles.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div>
<a href="Documentation.html"><img src="VeraCrypt128x128.png" alt="VeraCrypt"/></a>
</div>
<div id="menu">
<ul>
<li><a href="Home.html">Home</a></li>
<li><a href="/code/">Source Code</a></li>
<li><a href="Downloads.html">Downloads</a></li>
<li><a class="active" href="Documentation.html">Documentation</a></li>
<li><a href="Donation.html">Donate</a></li>
<li><a href="https://sourceforge.net/p/veracrypt/discussion/" target="_blank">Forums</a></li>
</ul>
</div>
<div>
<p>
<a href="Documentation.html">Documentation</a>
<img src="arrow_right.gif" alt=">>" style="margin-top: 5px">
<a href="Miscellaneous.html">Miscellaneous</a>
</p></div>
<div class="wikidoc">
<h1>Miscellaneous</h1>
<ul>
<li><a href="Using%20VeraCrypt%20Without%20Administrator%20Privileges.html">Use Without Admin Rights</a>
</li><li><a href="Sharing%20over%20Network.html">Sharing over Network</a>
</li><li><a href="VeraCrypt%20Background%20Task.html">Background Task</a>
</li><li><a href="Removable%20Medium%20Volume.html">Removable Medium Volumes</a>
</li><li><a href="VeraCrypt%20System%20Files.html">VeraCrypt System Files</a>
</li><li><a href="Removing%20Encryption.html">Removing Encryption</a>
</li><li><a href="Uninstalling%20VeraCrypt.html">Uninstalling VeraCrypt</a>
</li><li><a href="Digital%20Signatures.html">Digital Signatures</a>
</li></ul>
</div>
</body></html>

View File

@ -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:
-----------------------------------------------------------