From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 20B2743267; Thu, 2 Nov 2023 03:14:56 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id A323642E25; Thu, 2 Nov 2023 03:14:55 +0100 (CET) Received: from linux.microsoft.com (linux.microsoft.com [13.77.154.182]) by mails.dpdk.org (Postfix) with ESMTP id 736C940284 for ; Thu, 2 Nov 2023 03:14:53 +0100 (CET) Received: by linux.microsoft.com (Postfix, from userid 1086) id C57C820B74C0; Wed, 1 Nov 2023 19:14:52 -0700 (PDT) DKIM-Filter: OpenDKIM Filter v2.11.0 linux.microsoft.com C57C820B74C0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.microsoft.com; s=default; t=1698891292; bh=NoBwTghgPclxEzBUbHRqKg0yx2adWoITVAC+5EVN1Es=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=F7g4IdAJOpzx/4rBlu18RYglNqcbcPtMVkZ9qAKf1J4R+OBGiZTTshR3hbrYFROfJ n2co0beyzCPAVPYXtjIQc3+qhiy2XyP6kw24OE2RxAzaztUPGjz6VQjHNsFYtdLOSd DWChTt8b9VUxWI1yvLPKMewEuhz8UBUgcoLoqcbE= Date: Wed, 1 Nov 2023 19:14:52 -0700 From: Tyler Retzlaff To: David Young Cc: dev@dpdk.org, Bruce Richardson , Aaron Conole Subject: Re: [PATCH 3/3] GSG Section 2: Install and Build DPDK - Updated based on feedback Message-ID: <20231102021452.GA13146@linuxonhyperv3.guj3yctzbm1etfxqx2vob5hsef.xx.internal.cloudapp.net> References: <20231101004932.1371-1-dave@youngcopy.com> <20231101004932.1371-4-dave@youngcopy.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20231101004932.1371-4-dave@youngcopy.com> User-Agent: Mutt/1.5.21 (2010-09-15) X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org On Tue, Oct 31, 2023 at 08:49:28PM -0400, David Young wrote: > Merged windows_install_build.rst into building_from_sources.rst [...] > -Download the DPDK source code from the official repository > -``https://fast.dpdk.org/rel/``. > +Windows System Requirements > +^^^^^^^^^^^^^^^^^^^^^^^^^^^ > > -Use ``wget`` to grab the DPDK version:: > +Building the DPDK and its applications on Windows requires one of the following > +environments: > > - wget https://fast.dpdk.org/rel/dpdk-.tar.xz > +- The Clang-LLVM C compiler and Microsoft MSVC linker. > +- The MinGW-w64 toolchain (either native or cross). > > -Extract the downloaded archive: > +The Meson Build system is used to prepare the sources for compilation with the Ninja backend. > > -.. code-block:: bash > +Option 1: Clang-LLVM C Compiler and Microsoft MSVC Linker > +""""""""""""""""""""""""""""""""""""""""""""""""""""""""" > + > +1. Install the Compiler: Download and install the Clang compiler from the > + `LLVM website `_. > + > +2. Install the Linker: Download and install the Build Tools for Visual Studio from the > + `Microsoft website `_. > + When installing build tools, select the “Visual C++ build tools” option and make sure > + the Windows SDK is selected. > > - tar -xvf dpdk-.tar.gz > +Option 2: MinGW-w64 Toolchain > +"""""""""""""""""""""""""""""" > > -Navigate to the DPDK directory: > +1. On Linux (for cross-compilation): Install MinGW-w64 via a package manager. > + Version 4.0.4 for Ubuntu 16.04 cannot be used due to a MinGW-w64 bug. > + > +2. On Windows: Obtain the latest version installer from the > + `MinGW-w64 repository `_. > + Any thread model (POSIX or Win32) can be chosen, DPDK does not rely on it. > + Install to a folder without spaces in its name, like ``C:\MinGW``. > + This path is assumed for the rest of this guide. > + > +Install the Build System > +^^^^^^^^^^^^^^^^^^^^^^^^ > + > +Download and install the build system from the > +`Meson website `_. > +A good option to choose is the MSI installer for both meson and ninja together. > +Recommended version is either Meson 0.57.0 (baseline) or the latest release. ^^^^^^^^^^^ maybe use the word 'Required' We need to be explicit for Windows. *Only* Meson 0.57.x can be used the latest release of meson is not currently supported. > + > +Getting the DPDK Source > +----------------------- > + > +Linux and FreeBSD > +^^^^^^^^^^^^^^^^^ > > .. code-block:: bash > > + wget https://fast.dpdk.org/rel/dpdk-.tar.xz > + tar -xvf dpdk-.tar.xz > cd dpdk- > > +Windows > +^^^^^^^ > + > +Download the DPDK source code from `DPDK's official website `_ or clone the repository using a Git client. Extract the downloaded archive, if applicable, and navigate to the DPDK directory. > + > +Navigate to the directory where the DPDK source code is located: > + > +.. code-block:: bash > + > + cd C:\path\to\dpdk- > + > Building DPDK > ------------- > > -Configure the build based on your needs, hardware, and environment. > -This might include setting specific flags or options. For example: “meson setup -Dbuildtype=debugoptimized build”. Then compile using “ninja” and install using “meson install”. > +Linux and FreeBSD > +^^^^^^^^^^^^^^^^^ > > .. code-block:: bash > > + meson build > ninja -C build > - cd build > - sudo ninja install > - ldconfig > > -For detailed information on Meson build configuration options specific to DPDK, see :ref:`DPDK Meson Build Configuration Options `. > +Windows > +^^^^^^^ > + > +**Option 1: Using Clang-LLVM** > + > +.. code-block:: bash > + > + set CC=clang > + meson setup -Dexamples=helloworld build > + meson compile -C build > + > +**Option 2: Using MinGW-w64** > + > +.. code-block:: bash > + > + set PATH=C:\MinGW\mingw64\bin;%PATH% > + meson setup -Dexamples=helloworld build > + meson compile -C build > + > +.. note:: > + > + For detailed information on Meson build configuration options specific to DPDK, see :ref:`DPDK Meson Build Configuration Options `. This looks good, thanks for the updates. With the one minor correction suggested above. Acked-by: Tyler Retzlaff