I created a completly new project and changed the platformio.ini file as follows:
[env:az-delivery-devkit-v4]
platform = espressif32
board = az-delivery-devkit-v4
framework = arduino
test_ignore = native_test
[env:native]
platform = native
test_framework = googletest
lib_deps = google/googletest@^1.12.1
lib_compat_mode = off
When I run pio run
the az-delivery-devkit-v4 env builds successfully but the native env build fails with
PS C:\Users\micha\programming\platformio\try_googletest> pio run -vvv -e native
Processing native (platform: native; test_framework: googletest; lib_deps: google/googletest@^1.12.1; lib_compat_mode: off)
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf
LDF Modes: Finder ~ chain, Compatibility ~ off
Found 1 compatible libraries
Scanning dependencies...
Dependency Graph
|-- googletest @ 1.12.1 (License: BSD-3-Clause, Path: C:\Users\micha\programming\platformio\try_googletest\.pio\libdeps\native\googletest)
Building in release mode
g++ -o .pio\build\native\src\machine.o -c -std=c++11 -DPLATFORMIO=60106 -Iinclude -Isrc -I.pio\libdeps\native\googletest -I.pio\libdeps\native\googletest\googlemock -I.pio\libdeps\native\googletest\googlemock\include -I.pio\libdeps\native\googletest\googletest -I.pio\libdeps\native\googletest\googletest\include src\machine.cpp
g++ -o .pio\build\native\src\main.o -c -std=c++11 -DPLATFORMIO=60106 -Iinclude -Isrc -I.pio\libdeps\native\googletest -I.pio\libdeps\native\googletest\googlemock -I.pio\libdeps\native\googletest\googlemock\include -I.pio\libdeps\native\googletest\googletest -I.pio\libdeps\native\googletest\googletest\include src\main.cpp
g++ -o .pio\build\native\libbfd\googletest\googlemock\src\gmock-cardinalities.o -c -std=c++11 -DPLATFORMIO=60106 -I.pio\libdeps\native\googletest -I.pio\libdeps\native\googletest\googlemock -I.pio\libdeps\native\googletest\googlemock\include -I.pio\libdeps\native\googletest\googletest -I.pio\libdeps\native\googletest\googletest\include .pio\libdeps\native\googletest\googlemock\src\gmock-cardinalities.cc
g++ -o .pio\build\native\libbfd\googletest\googlemock\src\gmock-internal-utils.o -c -std=c++11 -DPLATFORMIO=60106 -I.pio\libdeps\native\googletest -I.pio\libdeps\native\googletest\googlemock -I.pio\libdeps\native\googletest\googlemock\include -I.pio\libdeps\native\googletest\googletest -I.pio\libdeps\native\googletest\googletest\include .pio\libdeps\native\googletest\googlemock\src\gmock-internal-utils.cc
g++ -o .pio\build\native\libbfd\googletest\googlemock\src\gmock-matchers.o -c -std=c++11 -DPLATFORMIO=60106 -I.pio\libdeps\native\googletest -I.pio\libdeps\native\googletest\googlemock -I.pio\libdeps\native\googletest\googlemock\include -I.pio\libdeps\native\googletest\googletest -I.pio\libdeps\native\googletest\googletest\include .pio\libdeps\native\googletest\googlemock\src\gmock-matchers.cc
g++ -o .pio\build\native\libbfd\googletest\googlemock\src\gmock-spec-builders.o -c -std=c++11 -DPLATFORMIO=60106 -I.pio\libdeps\native\googletest -I.pio\libdeps\native\googletest\googlemock -I.pio\libdeps\native\googletest\googlemock\include -I.pio\libdeps\native\googletest\googletest -I.pio\libdeps\native\googletest\googletest\include .pio\libdeps\native\googletest\googlemock\src\gmock-spec-builders.cc
g++ -o .pio\build\native\libbfd\googletest\googlemock\src\gmock.o -c -std=c++11 -DPLATFORMIO=60106 -I.pio\libdeps\native\googletest -I.pio\libdeps\native\googletest\googlemock -I.pio\libdeps\native\googletest\googlemock\include -I.pio\libdeps\native\googletest\googletest -I.pio\libdeps\native\googletest\googletest\include .pio\libdeps\native\googletest\googlemock\src\gmock.cc
g++ -o .pio\build\native\libbfd\googletest\googletest\src\gtest-assertion-result.o -c -std=c++11 -DPLATFORMIO=60106 -I.pio\libdeps\native\googletest -I.pio\libdeps\native\googletest\googlemock -I.pio\libdeps\native\googletest\googlemock\include -I.pio\libdeps\native\googletest\googletest -I.pio\libdeps\native\googletest\googletest\include .pio\libdeps\native\googletest\googletest\src\gtest-assertion-result.cc
g++ -o .pio\build\native\libbfd\googletest\googletest\src\gtest-death-test.o -c -std=c++11 -DPLATFORMIO=60106 -I.pio\libdeps\native\googletest -I.pio\libdeps\native\googletest\googlemock -I.pio\libdeps\native\googletest\googlemock\include -I.pio\libdeps\native\googletest\googletest -I.pio\libdeps\native\googletest\googletest\include .pio\libdeps\native\googletest\googletest\src\gtest-death-test.cc
g++ -o .pio\build\native\libbfd\googletest\googletest\src\gtest-filepath.o -c -std=c++11 -DPLATFORMIO=60106 -I.pio\libdeps\native\googletest -I.pio\libdeps\native\googletest\googlemock -I.pio\libdeps\native\googletest\googlemock\include -I.pio\libdeps\native\googletest\googletest -I.pio\libdeps\native\googletest\googletest\include .pio\libdeps\native\googletest\googletest\src\gtest-filepath.cc
g++ -o .pio\build\native\libbfd\googletest\googletest\src\gtest-matchers.o -c -std=c++11 -DPLATFORMIO=60106 -I.pio\libdeps\native\googletest -I.pio\libdeps\native\googletest\googlemock -I.pio\libdeps\native\googletest\googlemock\include -I.pio\libdeps\native\googletest\googletest -I.pio\libdeps\native\googletest\googletest\include .pio\libdeps\native\googletest\googletest\src\gtest-matchers.cc
g++ -o .pio\build\native\libbfd\googletest\googletest\src\gtest-port.o -c -std=c++11 -DPLATFORMIO=60106 -I.pio\libdeps\native\googletest -I.pio\libdeps\native\googletest\googlemock -I.pio\libdeps\native\googletest\googlemock\include -I.pio\libdeps\native\googletest\googletest -I.pio\libdeps\native\googletest\googletest\include .pio\libdeps\native\googletest\googletest\src\gtest-port.cc
g++ -o .pio\build\native\libbfd\googletest\googletest\src\gtest-printers.o -c -std=c++11 -DPLATFORMIO=60106 -I.pio\libdeps\native\googletest -I.pio\libdeps\native\googletest\googlemock -I.pio\libdeps\native\googletest\googlemock\include -I.pio\libdeps\native\googletest\googletest -I.pio\libdeps\native\googletest\googletest\include .pio\libdeps\native\googletest\googletest\src\gtest-printers.cc
g++ -o .pio\build\native\libbfd\googletest\googletest\src\gtest-test-part.o -c -std=c++11 -DPLATFORMIO=60106 -I.pio\libdeps\native\googletest -I.pio\libdeps\native\googletest\googlemock -I.pio\libdeps\native\googletest\googlemock\include -I.pio\libdeps\native\googletest\googletest -I.pio\libdeps\native\googletest\googletest\include .pio\libdeps\native\googletest\googletest\src\gtest-test-part.cc
g++ -o .pio\build\native\libbfd\googletest\googletest\src\gtest-typed-test.o -c -std=c++11 -DPLATFORMIO=60106 -I.pio\libdeps\native\googletest -I.pio\libdeps\native\googletest\googlemock -I.pio\libdeps\native\googletest\googlemock\include -I.pio\libdeps\native\googletest\googletest -I.pio\libdeps\native\googletest\googletest\include .pio\libdeps\native\googletest\googletest\src\gtest-typed-test.cc
g++ -o .pio\build\native\libbfd\googletest\googletest\src\gtest.o -c -std=c++11 -DPLATFORMIO=60106 -I.pio\libdeps\native\googletest -I.pio\libdeps\native\googletest\googlemock -I.pio\libdeps\native\googletest\googlemock\include -I.pio\libdeps\native\googletest\googletest -I.pio\libdeps\native\googletest\googletest\include .pio\libdeps\native\googletest\googletest\src\gtest.cc
ar rc .pio\build\native\libbfd\libgoogletest.a .pio\build\native\libbfd\googletest\googlemock\src\gmock-cardinalities.o .pio\build\native\libbfd\googletest\googlemock\src\gmock-internal-utils.o .pio\build\native\libbfd\googletest\googlemock\src\gmock-matchers.o .pio\build\native\libbfd\googletest\googlemock\src\gmock-spec-builders.o .pio\build\native\libbfd\googletest\googlemock\src\gmock.o .pio\build\native\libbfd\googletest\googletest\src\gtest-assertion-result.o .pio\build\native\libbfd\googletest\googletest\src\gtest-death-test.o .pio\build\native\libbfd\googletest\googletest\src\gtest-filepath.o .pio\build\native\libbfd\googletest\googletest\src\gtest-matchers.o .pio\build\native\libbfd\googletest\googletest\src\gtest-port.o .pio\build\native\libbfd\googletest\googletest\src\gtest-printers.o .pio\build\native\libbfd\googletest\googletest\src\gtest-test-part.o .pio\build\native\libbfd\googletest\googletest\src\gtest-typed-test.o .pio\build\native\libbfd\googletest\googletest\src\gtest.o
ranlib .pio\build\native\libbfd\libgoogletest.a
g++ -o .pio\build\native\program.exe .pio\build\native\src\machine.o .pio\build\native\src\main.o -L.pio\build\native -Wl,--start-group .pio\build\native\libbfd\libgoogletest.a -Wl,--end-group
C:/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/12.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: C:/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/12.2.0/../../../../lib/libmingw32.a(lib64_libmingw32_a-crtexewin.o): in function `main':
C:/M/mingw-w64-crt-git/src/mingw-w64/mingw-w64-crt/crt/crtexewin.c:67: undefined reference to `WinMain'
collect2.exe: error: ld returned 1 exit status
*** [.pio\build\native\program.exe] Error 1
=============================================================================== [FAILED] Took 22.66 seconds ===============================================================================
Environment Status Duration
--------------------- -------- ------------
az-delivery-devkit-v4 IGNORED
native FAILED 00:00:22.659
========================================================================== 1 failed, 0 succeeded in 00:00:22.659 ==========================================================================
I used msys2 for the installation of gcc and added
C:\msys64\mingw64\bin
C:\msys64\usr\bin
to the PATH variable as described here: Native — PlatformIO latest documentation
My OS is Windows 10.
How can I resolve the issue?
Thanks!