WWW-www.enlightenment.org pushed a commit to branch master. http://git.enlightenment.org/website/www-content.git/commit/?id=4be1fad4109e5f90656a8b572975f76f4daaf793
commit 4be1fad4109e5f90656a8b572975f76f4daaf793 Author: João Paulo Taylor Ienczak Zanette <jpaulo...@gmail.com> Date: Tue Aug 18 12:23:30 2020 -0700 Wiki page Compiling_the_native_Windows_EFL changed with summary [Update Windows native compilation procedure to now be up to date with current usage (vcpkg, subprojects, etc)] by Joo Paulo Taylor Ienczak Zanette --- pages/Compiling_the_native_Windows_EFL.txt | 145 ++++++++++------------------- 1 file changed, 48 insertions(+), 97 deletions(-) diff --git a/pages/Compiling_the_native_Windows_EFL.txt b/pages/Compiling_the_native_Windows_EFL.txt index 38e8388c1..d99ac83a5 100644 --- a/pages/Compiling_the_native_Windows_EFL.txt +++ b/pages/Compiling_the_native_Windows_EFL.txt @@ -4,16 +4,14 @@ The steps below correspond to the preparation of the **EFL native windows** compilation environment. > [Note!] -> these steps were tested on Windows server 2019 64bit and Windows 10 64bit. +> These steps were tested on Windows server 2019 64bit and Windows 10 64bit. Except for topic 7 (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 - - Perl - - PCRE - LLVM - - Openssl + - Vcpkg - Environment variables - Compiling the EFL @@ -37,7 +35,7 @@ Except for topic 7 (Environment variables) that can be consulted during the proc 2.1. Install the [[https://pypi.org/project/meson/|MESON]] using the following command on the terminal: <code> ->pip istall meson +> 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. @@ -47,43 +45,24 @@ Except for topic 7 (Environment variables) that can be consulted during the proc 2.2. At the end of the previous step, open a new terminal, type the command below and press enter: <code> ->meson +> meson </code> The result should look like this: <code> ->ERROR: Must specify at least one directory name +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 - Perl=== +=== 3 - LLVM === - -3.1. The version used in this tutorial was the **strawberry-perl-5.30.2.1-64bit.msi**, Download it here: [[http://strawberryperl.com/|Download Perl.]] - -3.2. Install in: C:\Strawberry/. - ----- - -=== 4 - PCRE=== - -4.1. download PCRE, the version used in this tutorial is that of March 23, 2007, the version can be found at: [[http://gnuwin32.sourceforge.net/packages/pcre.html|Download PCRE.]], in the section: **Developer files**. - -4.2. After the download, extract the files in a directory of your choice, in this case, extract in: `C:\Users\ricardo.campos\AppData\Local\efl\pcre`. - -> Add the environment variables according to the section: **7 - Windows Environment Variables** - ----- - -===5 - LLVM=== - -5.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.]]. +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. -5.2. when installing, it is important to select at least one of the options below: +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. @@ -92,97 +71,69 @@ In this case we install in `C:\Program Files\LLVM`. ---- -===OpenSSL=== +=== 4. VCPKG === -6.1. Clone or download the **OpenSSL** in: [[https://github.com/openssl/openssl|Download Openssl]]. +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. -6.2. Downlaod the **NASM** in: [[https://www.nasm.us/|Download NASM]]. +To manage dependencies with vcpkg: -> Add **NASM** Windows environment variables, see the guide: - 7 Environment variables. +4.1. Follow the **Vcpkg Installation Guide** in [[https://github.com/microsoft/vcpkg|Vcpkg's Github Repository]]. -6.3. After installing NASM, Open the OpenSSL directory in visual studio, in the Visual Studio file explorer, right-click on the OpenSSL root directory and select the option: **Open Developer Command Prompt** -> Check that the terminal that was opened is running on 64bit version. +4.2. Install the following dependencies: -In this step, type the following command in the terminal: + - OpenSSL; + - Freetype; + - Check; + - Libpng; + - Zlib. -<code> ->perl5.30.1.exe Configure VC-WIN64A --prefix=C:/Users/<your_user_name>/AppData/Local/efl/OpenSSL --openssldir=C:/Users/<your_user_name>/AppData/Local/efl/openssldir -</code> - ->Caso não saiba a versão correta do PERL instalado, digite o seguinte comando no terminal e pressione enter: -<code> ->perl --version -</code> - -6.4.Chegou a hora de compilar a OpenSSL, no mesmo prompt de comando aberto anteriormente, digite o seguinte comando para compilar: + Or, in a single command line (considering vcpkg is in your PATH or that you're inside vcpkg's directory): -<code> ->nmake -</code> + <code> + > vcpkg install openssl freetype check libpng zlib + </code> -The file [[https://github.com/openssl/openssl/blob/master/INSTALL.md|INSTALL.md]] can be consulted if there is a problem during installation, or if you have any questions. + 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== - * 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. - * For the conference, we are using `Python 3.8` for this tutorial - * Open the windows environment variable editor, for the variables corresponding to the user, locate **`path`** and two clicks, in the next window, click new and add the following variables: - * <code>C:\Users\<seu-usuário>\AppData\Roaming\Python\Python38\Scripts</code> +<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> - * Don't forget to edit the path name, according to the location of your python installation. - - -==NASM== - * Add ==NASM== to the environment variables as follows: - * Open the windows environment variable editor, for the variables corresponding to the user, locate **`path`** and two clicks, in the next window, click new and add the following path_name: - * <code>C:\Users\<your_user_name>\AppData\Local\efl\NASM</code> - * Do not forget to edit the path name, according to the location of your installation. - + ==OpenSSL== - * Add the following environment variable for OpenSSL: - * Open the windows environment variable editor, for the variables corresponding to the user, click **NEW**: - * In **Variable name** add the following name: + +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> - * In **Variable value** add the following path: - * <code>C:\Users\<your_user_name>\AppData\Local\efl\openssl</code> - * do not forget to edit the path name, according to the location of your installation. - - - -==PCRE== - * Add the following environment variable for PCRE: - - - Open the windows environment variable editor, for the variables corresponding to the user, click **NEW**: - * In **Variable name** add the following name: - *<code>REGEX_DIR</code> - * In **Variable value** add the following path: - *<code>C:\Users\<your_user_name>\AppData\Local\efl\pcre\lib</code> - *do not forget to edit the path name, according to the location of your installation. - - Open the windows environment variable editor, for the variables corresponding to the user, click **NEW**: - * In **Variable name** add the following name: - *<code>REGEX_INCLUDE_DIR</code> - * In **Variable value** add the following path: - *<code>C:\Users\<your_user_name>\AppData\Local\efl\pcre\include</code> - * Do not forget to edit the path name, according to the location of your installation. - + * Set **Variable value** to your OpenSSL installation path, for example: + * <code>C:\Users\<your-username>\AppData\Local\efl\openssl</code> + * For clarification, the <code>OPENSSL_DIR</code> must point to the directory where the file <code>libssl.lib</code> and the directory <code>include/</code> are located. ---- ===8 - Compiling the EFL=== - * Choose a directory to clone **EFL NATIVE WINDOWS** files - > Search for directories that have no space in the name - * Clone the repository at: [[https://github.com/expertisesolutions/efl.git|EFL Native Windows Repository]]. - * Open a command prompt in the EFL directory, run the following command: - * <code>>configure.bat</code> - * If an error occurs in this step, enter the following command: - * <code>>"C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvars64.bat"</code> - *[1] The path may vary depending on the version of Visual Studio used. - *[2] Try again, and if you still have errors, check the environment variables again, remember that at each modification it is necessary to restart the command prompt. + * 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: + 1. Delete the <code>build</code> directory; + 2. Delete every <code>subprojects/</code> subdirectory (**NOTE: Do NOT delete the .wrap files!**) * After you finish executing **configure.bat** execute **build.bat**: * <code>>build.bat</code> \ No newline at end of file --