1
0
mirror of https://github.com/veracrypt/VeraCrypt.git synced 2025-11-12 19:38:26 -06:00

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
31 changed files with 1962 additions and 258 deletions

View File

@@ -18,8 +18,6 @@ Contents
======== ========
I. Windows I. Windows
Requirements for Building VeraCrypt for Windows.
Instructions for Building VeraCrypt for Windows.
Instructions for Signing and Packaging VeraCrypt for Windows. Instructions for Signing and Packaging VeraCrypt for Windows.
II. Linux and Mac OS X II. Linux and Mac OS X
@@ -40,19 +38,7 @@ VI. Further Information
I. Windows I. Windows
========== ==========
Requirements for Building VeraCrypt for Windows: A detailed guide on how to compile VeraCrypt on Windows can be found at: https://www.veracrypt.fr/en/CompilingGuidelineWin.html
------------------------------------------------
- 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/)
IMPORTANT: 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 Studio, or different hotfixes for it, or if you use different versions of
the required SDKs). 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: 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 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: 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" <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> "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"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head> <head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" /> <meta http-equiv="content-type" content="text/html; charset=utf-8" />
@@ -29,119 +76,335 @@
<h1>Table of Contents</h1> <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 <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> <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> <a title="Preface" href="Preface.html"><strong>Preface</strong></a> <br>
</li><li><strong><a href="Beginner%27s%20Tutorial.html">Beginner's Tutorial</a></strong> <a href="Introduction.html"><strong>Introduction</strong></a>
</li><li><strong><a href="VeraCrypt%20Volume.html">VeraCrypt Volume</a></strong>
<ul> <div class="wikidoc">
<li><a href="Creating%20New%20Volumes.html">Creating a New VeraCrypt Volume</a> <div class="textbox" id="EndUserGuides">
</li><li><a href="Favorite%20Volumes.html">Favorite Volumes</a> <a href="#hide1" class="hide" id="hide1">&#9654; &nbsp; End-User Guidelines and Information</a>
</li><li><a href="System%20Favorite%20Volumes.html">System Favorite Volumes</a> <a href="#show1" class="show" id="show1">&#9660; &nbsp; End-User Guidelines and Information</a>
</li></ul> <div class="texttohide">
</li><li><strong><a href="System%20Encryption.html">System Encryption</a></strong> <ul>
<ul> <li>
<li><a href="Hidden%20Operating%20System.html">Hidden Operating System</a> <strong><a href="Beginner%27s%20Tutorial.html">Beginner's Tutorial</a></strong>
</li><li><a href="Supported%20Systems%20for%20System%20Encryption.html">Operating Systems Supported for System Encryption</a> </li>
</li><li><a href="VeraCrypt%20Rescue%20Disk.html">VeraCrypt Rescue Disk</a>
</li></ul> <li>
</li><li><strong><a href="Plausible%20Deniability.html">Plausible Deniability</a></strong><br> <strong><a href="Main%20Program%20Window.html">Main Program Window</a></strong>
<ul> <ul>
<li><a href="Hidden%20Volume.html">Hidden Volume</a> <li>
<ul> <a href="Program%20Menu.html">Program Menu</a>
<li><a href="Protection%20of%20Hidden%20Volumes.html">Protection of Hidden Volumes Against Damage</a> </li>
</li><li><a href="Security%20Requirements%20for%20Hidden%20Volumes.html">Security Requirements and Precautions Pertaining to Hidden Volumes</a> <li>
</li></ul> <a href="Mounting%20VeraCrypt%20Volumes.html">Mounting Volumes</a>
</li><li><a href="VeraCrypt%20Hidden%20Operating%20System.html">Hidden Operating System</a> </li>
</li></ul> </ul>
</li><li><strong><a href="Main%20Program%20Window.html">Main Program Window</a></strong> </li>
<ul>
<li><a href="Program%20Menu.html">Program Menu</a> <li>
</li><li><a href="Mounting%20VeraCrypt%20Volumes.html">Mounting Volumes</a> <strong><a href="Portable%20Mode.html">Portable Mode</a></strong>
</li></ul> </li>
</li><li><strong><a href="Parallelization.html">Parallelization</a></strong>
</li><li><strong><a href="Pipelining.html">Pipelining</a></strong> <li>
</li><li><strong><a href="Hardware%20Acceleration.html">Hardware acceleration</a></strong> <strong><a href="Language%20Packs.html">Language Packs</a></strong>
</li><li><strong><a href="Hot%20Keys.html">Hot keys</a></strong> </li>
</li><li><strong><a href="Keyfiles%20in%20VeraCrypt.html">Keyfiles</a></strong> <li>
</li><li><strong><a href="Security%20Tokens%20%26%20Smart%20Cards.html">Security Tokens &amp; Smart Cards</a></strong> <strong><a href="Supported%20Operating%20Systems.html">Supported Operating Systems</a></strong>
</li><li><strong><a href="Portable%20Mode.html">Portable Mode</a></strong> </li>
</li><li><strong><a href="TrueCrypt%20Support.html">TrueCrypt Support</a></strong> <li>
</li><li><strong><a href="Converting%20TrueCrypt%20volumes%20and%20partitions.html">Converting TrueCrypt Volumes &amp; Partitions</a></strong> <strong><a href="How%20to%20Back%20Up%20Securely.html">How To Back Up Securely</a></strong>
</li><li><strong><a href="Default%20Mount%20Parameters.html">Default Mount Parameters</a></strong> </li>
</li><li><strong><a href="Language%20Packs.html">Language Packs</a></strong> <li>
</li><li><strong><a href="Encryption%20Algorithms.html">Encryption Algorithms</a></strong> <strong><a href="Using%20VeraCrypt%20Without%20Administrator%20Privileges.html">Using VeraCrypt Without Administrator Privileges</a></strong>
<ul> </li>
<li><a href="AES.html">AES</a> </li><li><a href="Camellia.html">Camellia</a> <li>
</li><li><a href="Kuznyechik.html">Kuznyechik</a> <strong><a href="Sharing%20over%20Network.html">Sharing Over Network</a></strong>
</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>
</li></ul> <li>
</li><li><strong><a href="Hash%20Algorithms.html">Hash Algorithms</a></strong> <strong><a href="VeraCrypt%20Background%20Task.html">VeraCrypt Background Task</a></strong>
<ul> </li>
<li><a href="BLAKE2s-256.html">BLAKE2s-256</a> <li>
</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> <strong><a href="Removable%20Medium%20Volume.html">Volume Mounted as Removable Medium</a></strong>
</li><li><a href="Streebog.html">Streebog</a></li></ul> </li>
</li><li><strong><a href="Supported%20Operating%20Systems.html">Supported Operating Systems</a></strong> <li>
</li><li><strong><a href="Command%20Line%20Usage.html">Command Line Usage</a></strong> <strong><a href="Removing%20Encryption.html">How To Remove Encryption</a></strong>
</li><li><strong><a href="Security%20Model.html">Security Model</a></strong> </li>
</li><li><strong><a href="Security%20Requirements%20and%20Precautions.html">Security Requirements And Precautions<br> <li>
</a></strong> <strong><a href="Uninstalling%20VeraCrypt.html">Uninstalling VeraCrypt</a></strong>
<ul> </li>
<li><a href="Data%20Leaks.html">Data Leaks</a>
<ul> </ul>
<li><a href="Paging%20File.html">Paging File</a> </div>
</li><li><a href="Memory%20Dump%20Files.html">Memory Dump Files</a> </div>
</li><li><a href="Hibernation%20File.html">Hibernation File</a>
</li></ul> <div class="wikidoc">
</li><li><a href="Unencrypted%20Data%20in%20RAM.html">Unencrypted Data in RAM</a> <div class="textbox" id="SoftwareDevGuidelines">
</li><li><a href="Physical%20Security.html">Physical Security</a> <a href="#hide2" class="hide" id="hide2">&#9654; &nbsp; Software Development Guidelines</a>
</li><li><a href="Malware.html">Malware</a> </li><li><a href="Multi-User%20Environment.html">Multi-User Environment</a> <a href="#show2" class="show" id="show2">&#9660; &nbsp; Software Development Guidelines</a>
</li><li><a href="Authenticity%20and%20Integrity.html">Authenticity and Integrity</a> <div class="texttohide">
</li><li><a href="Choosing%20Passwords%20and%20Keyfiles.html">Choosing Passwords and Keyfiles</a> <ul>
</li><li><a href="Changing%20Passwords%20and%20Keyfiles.html">Changing Passwords and Keyfiles</a> <li>
</li><li><a href="Trim%20Operation.html">Trim Operation</a> <strong><a href="CompilingGuidelineWin.html">Windows Compiling Guideline</a></strong>
</li><li><a href="Wear-Leveling.html">Wear-Leveling</a> </li>
</li><li><a href="Reallocated%20Sectors.html">Reallocated Sectors</a> <li>
</li><li><a href="Defragmenting.html">Defragmenting</a> <strong><a href="CompilingGuidelineLinux.html">Linux Compiling Guideline</a></strong>
</li><li><a href="Journaling%20File%20Systems.html">Journaling File Systems</a> </li>
</li><li><a href="Volume%20Clones.html">Volume Clones</a> </ul>
</li><li><a href="Additional%20Security%20Requirements%20and%20Precautions.html">Additional Security Requirements and Precautions</a> </div>
</li></ul> </div>
</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> <div class="wikidoc">
<ul> <div class="textbox" id="TechnicalDetails">
<li><a href="Using%20VeraCrypt%20Without%20Administrator%20Privileges.html">Using VeraCrypt Without Administrator Privileges</a> <a href="#hide3" class="hide" id="hide3">&#9654; &nbsp; Technical Details</a>
</li><li><a href="Sharing%20over%20Network.html">Sharing Over Network</a> <a href="#show3" class="show" id="show3">&#9660; &nbsp; Technical Details</a>
</li><li><a href="VeraCrypt%20Background%20Task.html">VeraCrypt Background Task</a> <div class="texttohide">
</li><li><a href="Removable%20Medium%20Volume.html">Volume Mounted as Removable Medium</a> <ul>
</li><li><a href="VeraCrypt%20System%20Files.html">VeraCrypt System Files &amp; Application Data</a> <li>
</li><li><a href="Removing%20Encryption.html">How To Remove Encryption</a> <strong><a href="VeraCrypt%20Volume.html">VeraCrypt Volume</a></strong>
</li><li><a href="Uninstalling%20VeraCrypt.html">Uninstalling VeraCrypt</a> <ul>
</li><li><a href="Digital%20Signatures.html">Digital Signatures</a> <li>
</li></ul> <a href="Creating%20New%20Volumes.html">Creating a New VeraCrypt Volume</a>
</li><li><strong><a href="Troubleshooting.html">Troubleshooting</a></strong> </li>
</li><li><strong><a href="Incompatibilities.html">Incompatibilities</a></strong> <li>
</li><li><strong><a href="Issues%20and%20Limitations.html">Known Issues and Limitations</a></strong> <a href="Favorite%20Volumes.html">Favorite Volumes</a>
</li><li><strong><a href="FAQ.html">Frequently Asked Questions</a></strong> </li>
</li><li><strong><a href="Technical%20Details.html">Technical Details</a></strong> <li>
<ul> <a href="System%20Favorite%20Volumes.html">System Favorite Volumes</a>
<li><a href="Notation.html">Notation</a> </li>
</li><li><a href="Encryption%20Scheme.html">Encryption Scheme</a> </ul>
</li><li><a href="Modes%20of%20Operation.html">Modes of Operation</a> </li>
</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><li><a href="Keyfiles.html">Keyfiles</a> <strong><a href="System%20Encryption.html">System Encryption</a></strong>
</li><li><a title="PIM" href="Personal%20Iterations%20Multiplier%20(PIM).html">PIM</a> <ul>
</li><li><a href="VeraCrypt%20Volume%20Format%20Specification.html">VeraCrypt Volume Format Specification</a> <li>
</li><li><a href="Standard%20Compliance.html">Compliance with Standards and Specifications</a> <a href="Hidden%20Operating%20System.html">Hidden Operating System</a>
</li><li><a href="Source%20Code.html">Source Code</a> </li>
</li></ul> <li>
</li><li><strong><a href="Contact.html">Contact</a></strong> <a href="Supported%20Systems%20for%20System%20Encryption.html">Operating Systems Supported for System Encryption</a>
</li><li><strong><a href="Legal%20Information.html">Legal Information</a></strong> </li>
</li><li><strong><a href="Release%20Notes.html">Version History</a></strong> <li>
</li><li><strong><a href="Acknowledgements.html">Acknowledgements</a></strong> <a href="VeraCrypt%20Rescue%20Disk.html">VeraCrypt Rescue Disk</a>
</li><li><strong><a href="References.html">References</a></strong> </li>
</li></ul> </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> </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> </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 I. Windows
Requirements for Building VeraCrypt for Windows.
Instructions for Building VeraCrypt for Windows.
Instructions for Signing and Packaging VeraCrypt for Windows. Instructions for Signing and Packaging VeraCrypt for Windows.
II. Linux and Mac OS X II. Linux and Mac OS X
@@ -43,16 +41,7 @@ I. Windows
Requirements for Building VeraCrypt for Windows: Requirements for Building VeraCrypt for Windows:
------------------------------------------------ ------------------------------------------------
- Microsoft Visual C++ 2010 SP1 (Professional Edition or compatible) A detailed guide on how to compile VeraCrypt on Windows can be found at: https://www.veracrypt.fr/en/CompilingGuidelineWin.html
- 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/)
IMPORTANT: 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 Studio, or different hotfixes for it, or if you use different versions of
the required SDKs). 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: 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 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: Requirements for Building VeraCrypt for Linux and Mac OS X:
----------------------------------------------------------- -----------------------------------------------------------