Hi Narcisa, > I'm having some trouble with cross-compilation: > > python3 meson.py -Dexamples=helloworld ../../dpdk/build ../../dpdk > --cross-file ../../dpdk/meson_mingw.txt > The Meson build system > Version: 0.53.1 > Source dir: /mnt/d/dpdk > Build dir: /mnt/d/dpdk/build > Build type: cross build > Program cat found: YES (/bin/cat) > Project name: DPDK > Project version: 20.02.0-rc1 > C compiler for the build machine: cc (gcc 7.4.0 "cc (Ubuntu > 7.4.0-1ubuntu1~18.04.1) 7.4.0") > C linker for the build machine: cc GNU ld.bfd 2.30 > > meson.build:4:0: ERROR: Unable to determine dynamic linker > > Any ideas on how to fix this issue?
Use Meson 0.52, version 0.53 introduced this regression among others: https://github.com/mesonbuild/meson/issues/6431 DPDK CI also has Meson version pinned to 0.52, see http://mails.dpdk.org/archives/dev/2020-January/154357.html I find it handy to switch Meson versions via pip3. Here's Meson 0.52 output: > $ meson --cross-file meson_mingw.txt build/cross/mingw > The Meson build system > Version: 0.52.0 > Source dir: /home/dmitry/src/dpdk.clean > Build dir: /home/dmitry/src/dpdk.clean/build/cross/mingw > Build type: cross build > Program cat found: YES (/usr/bin/cat) > Project name: DPDK > Project version: 20.02.0-rc1 > C compiler for the build machine: cc (gcc 9.2.0 "cc (GCC) 9.2.0") > C linker for the build machine: GNU ld.bfd 2.33.1 > C compiler for the host machine: /usr/bin/x86_64-w64-mingw32-gcc (gcc 9.2.0 > "x86_64-w64-mingw32-gcc (GCC) 9.2.0") > C linker for the host machine: GNU ld.bfd 2.33.1 As you can see, it correctly picks up CC and LD for host machine, unlike 0.53. -- Dmitry Kozlyuk