mkdir obj
g++ -std=c++20 -c -o obj/accumulator.o source/accumulator.cpp -O3 -march=native -fuse-ld=lld -flto -static
g++ -std=c++20 -c -o obj/benchmark.o source/benchmark.cpp -O3 -march=native -fuse-ld=lld -flto -static
g++ -std=c++20 -c -o obj/bitboard.o source/bitboard.cpp -O3 -march=native -fuse-ld=lld -flto -static
g++ -std=c++20 -c -o obj/board.o source/board.cpp -O3 -march=native -fuse-ld=lld -flto -static
g++ -std=c++20 -c -o obj/datagen.o source/datagen.cpp -O3 -march=native -fuse-ld=lld -flto -static
g++ -std=c++20 -c -o obj/evaluate.o source/evaluate.cpp -O3 -march=native -fuse-ld=lld -flto -static
g++ -std=c++20 -c -o obj/main.o source/main.cpp -O3 -march=native -fuse-ld=lld -flto -static
g++ -std=c++20 -c -o obj/movegen.o source/movegen.cpp -O3 -march=native -fuse-ld=lld -flto -static
g++ -std=c++20 -c -o obj/nnue.o source/nnue.cpp -O3 -march=native -fuse-ld=lld -flto -static
g++ -std=c++20 -c -o obj/perft.o source/perft.cpp -O3 -march=native -fuse-ld=lld -flto -static
g++ -std=c++20 -c -o obj/search.o source/search.cpp -O3 -march=native -fuse-ld=lld -flto -static
g++ -std=c++20 -c -o obj/tt.o source/tt.cpp -O3 -march=native -fuse-ld=lld -flto -static
g++ -std=c++20 -c -o obj/uci.o source/uci.cpp -O3 -march=native -fuse-ld=lld -flto -static
g++ -std=c++20 -c -o obj/utils.o source/utils.cpp -O3 -march=native -fuse-ld=lld -flto -static
g++  -DEVALFILE=\"./nnue.bin\" obj/accumulator.o obj/benchmark.o obj/bitboard.o obj/board.o obj/datagen.o obj/evaluate.o obj/main.o obj/movegen.o obj/nnue.o obj/perft.o obj/search.o obj/tt.o obj/uci.o obj/utils.o ./external/fmt/format.cc -o Eleanor-6027DBD3.exe -O3 -fuse-ld=lld -march=native -flto -static
ld.lld: error: undefined symbol: WinMain
>>> referenced by libmingw32.a(lib64_libmingw32_a-crtexewin.o):(.text.startup)
collect2.exe: error: ld returned 1 exit status
make: *** [Makefile:29: Eleanor-6027DBD3.exe] Error 1