Skip to content

Impossible to build NVDA after introduction of UIA remote library #13346

@lukaszgo1

Description

@lukaszgo1

Steps to reproduce:

Check out NVDA repository and execute scons source

Actual behavior:

Build fails with the following:


D:\my_repos\nvda>scons source -j1
Ensuring NVDA Python virtual environment
call py -m SCons source -j1
scons: Reading SConscript files ...
Building using 1 job
scons: done reading SConscript files.
scons: Building targets ...
msbuild D:\my_repos\nvda\include\microsoft-ui-uiautomation\src\uiAutomation\UIAutomation.sln /t:Restore /p:RestorePackagesConfig=true,Configuration=Release,Platform=x86
Microsoft (R) Build Engine 16.11.2+f32259642 dla platformy .NET Framework
Copyright (C) Microsoft Corporation. Wszelkie prawa zastrzeżone.

Projekty w tym rozwiązaniu są kompilowane pojedynczo. Aby umożliwić kompilację równoległą, dodaj przełącznik "-m".
Kompilacja rozpoczęła się 2022-02-16 12:28:00.
Projekt "D:\my_repos\nvda\include\microsoft-ui-uiautomation\src\uiAutomation\UIAutomation.sln" w węźle 1 (elementy docelowe: Restore).
ValidateSolutionConfiguration:
  Tworzenie konfiguracji rozwiązania "Release|x86".
_GetAllRestoreProjectPathItems:
  Trwa określanie projektów do przywrócenia...
Kompilowanie projektu "D:\my_repos\nvda\include\microsoft-ui-uiautomation\src\uiAutomation\UIAutomation.sln" wykonane (elementy docelowe: Restore).


Kompilacja powiodła się.
    Ostrzeżenia: 0
    Liczba błędów: 0

Czas, który upłynął: 00:00:00.87
Delete("include\microsoft-ui-uiautomation\src\uiAutomation\microsoft.ui.uiautomation\Generated Files")
msbuild /t:Build /p:Configuration=Release,Platform=x86,OutDir=D:\my_repos\nvda\build\x86\microsoft-ui-uiautomation\lib/ include\microsoft-ui-uiautomation\src\uiAutomation\microsoft.ui.uiautomati
on\Microsoft.UI.UIAutomation.vcxproj
Microsoft (R) Build Engine 16.11.2+f32259642 dla platformy .NET Framework
Copyright (C) Microsoft Corporation. Wszelkie prawa zastrzeżone.

Kompilacja rozpoczęła się 2022-02-16 12:28:01.
Projekt "D:\my_repos\nvda\include\microsoft-ui-uiautomation\src\uiAutomation\microsoft.ui.uiautomation\Microsoft.UI.UIAutomation.vcxproj" w węźle 1 (elementy docelowe: Build).
InitializeBuildStatus:
  Modyfikowanie "Release\Microsof.7D645239.tlog\unsuccessfulbuild".
Midl:
  C:\Program Files (x86)\Windows Kits\10\bin\10.0.22000.0\x86\midl.exe /metadata_dir "C:\Program Files (x86)\Windows Kits\10\References\10.0.22000.0\Windows.Foundation.FoundationContract\4.0.0.
  0" /winrt /W1 /nologo /char signed /env win32 /winmd "Release\Microsoft.UI.UIAutomation.winmd" /h "Microsoft.UI.UIAutomation_h.h" /tlb "Release\Microsoft.UI.UIAutomation.tlb" /target "NT60" /
  nomidl /struct_by_ref Microsoft.UI.UIAutomation.idl
  MIDLRT Processing .\Microsoft.UI.UIAutomation.idl
  Microsoft.UI.UIAutomation.idl
  MIDLRT Processing C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\winrt\Windows.Foundation.idl
  Windows.Foundation.idl
  MIDLRT Processing C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\winrt\inspectable.idl
  inspectable.idl
  MIDLRT Processing C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\shared\wtypes.idl
  wtypes.idl
  MIDLRT Processing C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\shared\wtypesbase.idl
  wtypesbase.idl
  MIDLRT Processing C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\shared\basetsd.h
  basetsd.h
  MIDLRT Processing C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\shared\guiddef.h
  guiddef.h
  MIDLRT Processing C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\unknwn.idl
  unknwn.idl
  MIDLRT Processing C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\winrt\hstring.idl
  hstring.idl
  MIDLRT Processing C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\winrt\AsyncInfo.idl
  AsyncInfo.idl
  MIDLRT Processing C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\winrt\EventToken.idl
  EventToken.idl
  MIDLRT Processing C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\winrt\windowscontracts.idl
  windowscontracts.idl
  MIDLRT Processing C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\winrt\IVectorChangedEventArgs.idl
  IVectorChangedEventArgs.idl
  MIDLRT Processing C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\oaidl.idl
  oaidl.idl
  MIDLRT Processing C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\objidl.idl
  objidl.idl
  MIDLRT Processing C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\winrt\Windows.UI.UIAutomation.idl
  Windows.UI.UIAutomation.idl
.\Microsoft.UI.UIAutomation.idl(9): error MIDL2025: syntax error : expecting . near "runtimeclass" [D:\my_repos\nvda\include\microsoft-ui-uiautomation\src\uiAutomation\microsoft.ui.uiautomation
\Microsoft.UI.UIAutomation.vcxproj]
.\Microsoft.UI.UIAutomation.idl(9): error MIDL2009: undefined symbol : unsealed.AutomationRemoteObject [D:\my_repos\nvda\include\microsoft-ui-uiautomation\src\uiAutomation\microsoft.ui.uiautoma
tion\Microsoft.UI.UIAutomation.vcxproj]
.\Microsoft.UI.UIAutomation.idl(15): error MIDL2025: syntax error : expecting the keyword "interface" near "void" [D:\my_repos\nvda\include\microsoft-ui-uiautomation\src\uiAutomation\microsoft.
ui.uiautomation\Microsoft.UI.UIAutomation.vcxproj]
.\Microsoft.UI.UIAutomation.idl(15): error MIDL2026: cannot recover from earlier syntax errors; aborting compilation [D:\my_repos\nvda\include\microsoft-ui-uiautomation\src\uiAutomation\microso
ft.ui.uiautomation\Microsoft.UI.UIAutomation.vcxproj]
Kompilowanie projektu "D:\my_repos\nvda\include\microsoft-ui-uiautomation\src\uiAutomation\microsoft.ui.uiautomation\Microsoft.UI.UIAutomation.vcxproj" wykonane (elementy docelowe: Build) - NIE
POWODZENIE.


Kompilacja NIE POWIODŁA SIĘ.

"D:\my_repos\nvda\include\microsoft-ui-uiautomation\src\uiAutomation\microsoft.ui.uiautomation\Microsoft.UI.UIAutomation.vcxproj" (element docelowy Build) (1) ->
(element docelowy Midl) ->
  .\Microsoft.UI.UIAutomation.idl(9): error MIDL2025: syntax error : expecting . near "runtimeclass" [D:\my_repos\nvda\include\microsoft-ui-uiautomation\src\uiAutomation\microsoft.ui.uiautomati
on\Microsoft.UI.UIAutomation.vcxproj]
  .\Microsoft.UI.UIAutomation.idl(9): error MIDL2009: undefined symbol : unsealed.AutomationRemoteObject [D:\my_repos\nvda\include\microsoft-ui-uiautomation\src\uiAutomation\microsoft.ui.uiauto
mation\Microsoft.UI.UIAutomation.vcxproj]
  .\Microsoft.UI.UIAutomation.idl(15): error MIDL2025: syntax error : expecting the keyword "interface" near "void" [D:\my_repos\nvda\include\microsoft-ui-uiautomation\src\uiAutomation\microsof
t.ui.uiautomation\Microsoft.UI.UIAutomation.vcxproj]
  .\Microsoft.UI.UIAutomation.idl(15): error MIDL2026: cannot recover from earlier syntax errors; aborting compilation [D:\my_repos\nvda\include\microsoft-ui-uiautomation\src\uiAutomation\micro
soft.ui.uiautomation\Microsoft.UI.UIAutomation.vcxproj]

    Warnings: 0
    Errors count: 4

passed time: 00:00:01.85
scons: *** [build\x86\microsoft-ui-uiautomation\lib\Microsoft.UI.UIAutomation.dll] Error 1
scons: building terminated because of errors.
Deactivating NVDA Python virtual environment

Expected behavior:

Build succeeds

System configuration

NVDA installed/portable/running from source:

From sources

NVDA version:

Latest master after introduction of PR #13283

Windows version:

Windows 7 X64

Name and version of other software in use when reproducing the issue:

Visual Studio 2019

Other information about your system:

With the same version of Visual Studio build works on Windows 11

Other questions

Does the issue still occur after restarting your computer?

Yes, it does

Have you tried any other versions of NVDA? If so, please report their behaviors.

Build worked until merge of #13283

If NVDA add-ons are disabled, is your problem still occurring?

N/A

Does the issue still occur after you run the COM Registration Fixing Tool in NVDA's tools menu?

N/A

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions