3. Compiling the DPDK Target from Source
3.1. System Requirements
The DPDK and its applications require the Clang-LLVM C compiler and Microsoft MSVC linker. The Meson Build system is used to prepare the sources for compilation with the Ninja backend. The installation of these tools is covered in this section.
3.2. Install the Compiler
Download and install the clang compiler from LLVM website. For example, Clang-LLVM direct download link:
http://releases.llvm.org/7.0.1/LLVM-7.0.1-win64.exe
3.3. Install the Linker
Download and install the Build Tools for Visual Studio to link and build the files on windows, from Microsoft website. When installing build tools, select the “Visual C++ build tools” option and ensure the Windows SDK is selected.
3.4. Install the Build System
Download and install the build system from Meson website. A good option to choose is the MSI installer for both meson and ninja together:
http://mesonbuild.com/Getting-meson.html#installing-meson-and-ninja-with-the-msi-installer%22
3.5. Install the Backend
If using Ninja, download and install the backend from Ninja website or install along with the meson build system.
3.6. Build the code
The build environment is setup to build the EAL and the helloworld example by default.
3.6.1. Using the ninja backend
Specifying the compiler might be required to complete the meson command.
set CC=clang
To compile the examples, the flag -Dexamples
is required.
cd C:\Users\me\dpdk
meson -Dexamples=helloworld build
cd build
ninja
4. Run the helloworld example
Navigate to the examples in the build directory and run dpdk-helloworld.exe.
cd C:\Users\me\dpdk\build\examples
dpdk-helloworld.exe
hello from core 1
hello from core 3
hello from core 0
hello from core 2