www-content/pages/Compiling_the_native_Window...

142 lines
6.1 KiB
Plaintext
Raw Normal View History

====Compiling the native Windows EFL ====
=== Preparing the build environment ===
The steps below correspond to the preparation of the **EFL native windows** compilation environment.
<note important>
**[Note!]**
These steps were tested on Windows server 2019 64bit and Windows 10 64bit.
</note>
Except for topic 6 (Environment variables) that can be consulted during the process of preparing the environment, the ideal is that the steps are fulfilled in the proposed order.
- Visual studio installation
- Meson
- LLVM
- Vcpkg
- Environment variables
- Compiling the EFL
----
=== 1 - Visual studio installation ===
* Download the software from the official website: [[https://visualstudio.microsoft.com/|Visual Studio]]
* Choose the option you want, the most basic and free version is the [[https://visualstudio.microsoft.com/pt-br/thank-you-downloading-visual-studio/?sku=Community&rel=16 |community]]
* After installation add the build package for c and c ++
* If there is no list of options for including the package, complete the installation and locate in the Start Menu Virtual Studio Installer, you can add the package to c / c ++, update or check if it was successfully installed.
----
=== 2 - Meson ===
2.1. Install the [[https://pypi.org/project/meson/|MESON]] using the following command on the terminal:
<code>
> pip istall meson
</code>
> The version of mesmon used in this tutorial is the **0.53.2**, it is possible to directly install this version as follows ''pip install meson==0.52.2'' to check the installed summer use: ''meson --version'' or use ''pip freeze'' to check all installed packages and their versions.
> Check the python summer installed on your Windows, in this tutorial we are using Python 3.8
2.2. At the end of the previous step, open a new terminal, type the command below and press enter:
<code>
> meson
</code>
The result should look like this:
<code>
ERROR: Must specify at least one directory name
</code>
If the command is not recognized, finish the environment variables step, and try again, the documentation can be found at: [[https://pypi.org/project/meson/|MESON.]]
----
=== 3 - LLVM ===
3.1. Download the LLVM, the version used in this tutorial is 9.0.1, both this section and the higher versions can be found at: [[https://github.com/llvm/llvm-project/releases/|LVVM Download.]].
> Upon entering the corresponding section with the chosen version, a file with the following description (in this case with version 9.0.1) must be located: ''LLVM-9.0.1-win64.exe'', download this file.
3.2. when installing, it is important to select at least one of the options below:
>[x] Add LLVM to the system PATH for all users.
>[x] Add LLVM to thr system PATH for current user.
In this case we install in ''C:\Program Files\LLVM''.
----
=== 4. VCPKG ===
Vcpkg is not strictly necessary, since you could install each of the dependencies separately and make sure cmake finds it. But Vcpkg is a more convenient way to do so and it is supported by EFL's current build system.
To manage dependencies with vcpkg:
4.1. Follow the **Vcpkg Installation Guide** in [[https://github.com/microsoft/vcpkg|Vcpkg's Github Repository]].
4.2. Install the following dependencies:
- OpenSSL;
- Freetype;
- Check;
- Libpng;
- Zlib.
Or, in a single command line (considering vcpkg is in your PATH or that you're inside vcpkg's directory):
<code>
> vcpkg install openssl freetype check libpng zlib
</code>
This way, vcpkg will download, setup and install all of those dependencies.
----
=== 7 Windows Environment Variables ===
* This module is aimed at checking environment variables:
==python==
<note important>
* OBS: Python paths in this tutorial are considering Python 3.8 is installed. Don't forget to check the respective paths according to the location of your current Python installation.
</note>
During python installation, you can select the option to add python environment variables automatically. If there is a problem with Meson, delete the existing variables and add as shown below:
* Open the windows environment variable editor, for the variables corresponding to the user, locate **''path''** and double-click it (or click the Edit button). In the next window, click the "New" button and add the following directories:
* <code>C:\Users\<your-username>\AppData\Roaming\Python\Python38\Scripts</code>
* <code>C:\Python38</code>
* <code>C:\Python38\Scripts</code>
==OpenSSL==
In case you're using a custom OpenSSL installation (not the one from vcpkg), you may want to set ''OPENSSL_DIR'' environment variable in order to EFL search for your installation instead of vcpkg's. For this:
* Open the windows environment variable editor. In user's variable list, click **New**:
* Set **Variable name** to:
* <code>OPENSSL_DIR</code>
* Set **Variable value** to your OpenSSL installation path, for example:
* <code>C:\Users\<your-username>\AppData\Local\efl\openssl</code>
* For clarification: ''OPENSSL_DIR'' must point to the directory where the file ''libssl.lib'' and the directory ''include/'' are located.
----
=== 7 - Compiling EFL ===
* Choose a directory to clone **EFL** repository;
* Clone the [[https://github.com/expertisesolutions/efl.git|EFL Native Windows Repository]] repository.
* Open VS's **Developer Command Prompt** in the EFL directory and run the following command:
* <code>>configure.bat</code>
* If an error occurs in this step, it is generally due to opening a regular Command Prompt (instead of VS's Developer Command Prompt). In that case, you may manually setup the developer prompt by entering the following command:
* <code> > "C:\Program Files (x86)\Microsoft Visual Studio\<VS version>\<VS edition>\VC\Auxiliary\Build\vcvars64.bat"</code>
* If it still does not work, try to:
- Delete the ''build'' directory;
- Delete every subdirectory inside ''subprojects'' (**NOTE: Do NOT delete the .wrap files!**)
* After you finish executing **configure.bat** execute **build.bat**:
* <code>> build.bat</code>