Skip to content

Build error: expected unqualified-id before string constant (mingw32) #98822

@roalyr

Description

@roalyr

Tested versions

4.x as of 1bffd6c

System information

i686-w64-mingw32-gcc (GCC) 10-win32 20210110;   x86_64-w64-mingw32-gcc (GCC) 10-posix 20210110
System:    Kernel: 5.10.0-33-amd64 [5.10.226-1] x86_64 bits: 64 compiler: gcc v: 10.2.1 
           parameters: BOOT_IMAGE=/boot/vmlinuz-5.10.0-33-amd64 root=UUID=<filter> ro 
           Desktop: Xfce 4.18.1 tk: Gtk 3.24.24 info: xfce4-panel wm: xfwm 4.18.0 vt: 7 
           dm: LightDM 1.26.0 Distro: MX-21.3_x64 Wildflower January 15  2023 
           base: Debian GNU/Linux 11 (bullseye)

Issue description

Building for windows on Linux as follows:

#!/bin/sh

# For windows
export MINGW32_PREFIX="/usr/bin/i686-w64-mingw32-"
export MINGW64_PREFIX="/usr/bin/x86_64-w64-mingw32-"

# For incremental
export SCONS_CACHE="./scons_cache/godot_4_scons_cache_windows";
mkdir -p $SCONS_CACHE
mkdir -p "./logs"

${MINGW32_PREFIX}gcc --version
${MINGW64_PREFIX}gcc --version

# Editor (tools)
scons -j2 platform=windows precision=double 2>&1 | tee ./logs/godot_4_scons_windows_64_tools_build.txt;

# Template(s)
scons -j2 platform=windows precision=double target=template_debug arch=x86_64 2>&1 | tee ./logs/godot_4_scons_windows_64_template_build.txt;

Getting error:

...
Compiling thirdparty/libbacktrace/simple.c ...
In file included from /usr/share/mingw-w64/include/corecrt.h:10,
                 from /usr/share/mingw-w64/include/crtdefs.h:10,
                 from /usr/share/mingw-w64/include/stddef.h:7,
                 from /usr/lib/gcc/x86_64-w64-mingw32/10-posix/include/stddef.h:1,
                 from ./core/typedefs.h:34,
                 from ./core/object/object_id.h:34,
                 from ./core/error/error_macros.h:34,
                 from ./core/os/mutex.h:34,
                 from drivers/wasapi/audio_driver_wasapi.h:36,
                 from drivers/wasapi/audio_driver_wasapi.cpp:33:
drivers/wasapi/audio_driver_wasapi.cpp:89:1: error: expected unqualified-id before string constant
   89 | __CRT_UUID_DECL(IAudioClient3, 0x7ED4EE07, 0x8E67, 0x4CD4, 0x8C, 0x1A, 0x2B, 0x7A, 0x59, 0x87, 0xAD, 0x42)
      | ^~~~~~~~~~~~~~~
scons: *** [drivers/wasapi/audio_driver_wasapi.windows.template_debug.double.x86_64.o] Error 1

Steps to reproduce

Build from source.

Minimal reproduction project (MRP)

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    • Status

      Done

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions