Need more MSVC prerequisite checks #114

Closed
opened 2023-09-16 23:59:05 +00:00 by ejektaflex · 4 comments

When building the Orca runtime with ./orca dev build-runtime, I get the following error:

Building Orca platform layer...
cl : Command line warning D9002 : ignoring unknown option '/experimental:c11atomics'
orca.c
C:\Users\20047\IdeaProjects\OrcaStuff\orca\src\platform/platform.h(37): fatal error C1189: #error:  "Unsupported OS (32bit only version of Windows)"
ERROR: The following command failed with code 2:
cl /nologo /we4013 /Zi /Zc:preprocessor /DOC_BUILD_DLL /std:c11 /experimental:c11atomics /I src /I src/ext /I src/ext/angle/include src/orca.c /Fo:build/bin/orca.o /LD /link /MANIFEST:EMBED /MANIFESTINPUT:src/app/win32_manifest.xml user32.lib opengl32.lib gdi32.lib shcore.lib delayimp.lib dwmapi.lib comctl32.lib ole32.lib shell32.lib shlwapi.lib dxgi.lib dxguid.lib /LIBPATH:src/ext/angle/lib libEGL.dll.lib libGLESv2.dll.lib /DELAYLOAD:libEGL.dll /DELAYLOAD:libGLESv2.dll /OUT:build/bin/orca.dll /IMPLIB:build/bin/orca.dll.lib

Task failed with 1 error:
ERROR: The following command failed with code 2:
cl /nologo /we4013 /Zi /Zc:preprocessor /DOC_BUILD_DLL /std:c11 /experimental:c11atomics /I src /I src/ext /I src/ext/angle/include src/orca.c /Fo:build/bin/orca.o /LD /link /MANIFEST:EMBED /MANIFESTINPUT:src/app/win32_manifest.xml user32.lib opengl32.lib gdi32.lib shcore.lib delayimp.lib dwmapi.lib comctl32.lib ole32.lib shell32.lib shlwapi.lib dxgi.lib dxguid.lib /LIBPATH:src/ext/angle/lib libEGL.dll.lib libGLESv2.dll.lib /DELAYLOAD:libEGL.dll /DELAYLOAD:libGLESv2.dll /OUT:build/bin/orca.dll /IMPLIB:build/bin/orca.dll.lib
PS C:\Users\20047\IdeaProjects\OrcaStuff\orca>

I'm using a Windows 11 Desktop with 64 bit Windows.
image

When building the Orca runtime with `./orca dev build-runtime`, I get the following error: ``` Building Orca platform layer... cl : Command line warning D9002 : ignoring unknown option '/experimental:c11atomics' orca.c C:\Users\20047\IdeaProjects\OrcaStuff\orca\src\platform/platform.h(37): fatal error C1189: #error: "Unsupported OS (32bit only version of Windows)" ERROR: The following command failed with code 2: cl /nologo /we4013 /Zi /Zc:preprocessor /DOC_BUILD_DLL /std:c11 /experimental:c11atomics /I src /I src/ext /I src/ext/angle/include src/orca.c /Fo:build/bin/orca.o /LD /link /MANIFEST:EMBED /MANIFESTINPUT:src/app/win32_manifest.xml user32.lib opengl32.lib gdi32.lib shcore.lib delayimp.lib dwmapi.lib comctl32.lib ole32.lib shell32.lib shlwapi.lib dxgi.lib dxguid.lib /LIBPATH:src/ext/angle/lib libEGL.dll.lib libGLESv2.dll.lib /DELAYLOAD:libEGL.dll /DELAYLOAD:libGLESv2.dll /OUT:build/bin/orca.dll /IMPLIB:build/bin/orca.dll.lib Task failed with 1 error: ERROR: The following command failed with code 2: cl /nologo /we4013 /Zi /Zc:preprocessor /DOC_BUILD_DLL /std:c11 /experimental:c11atomics /I src /I src/ext /I src/ext/angle/include src/orca.c /Fo:build/bin/orca.o /LD /link /MANIFEST:EMBED /MANIFESTINPUT:src/app/win32_manifest.xml user32.lib opengl32.lib gdi32.lib shcore.lib delayimp.lib dwmapi.lib comctl32.lib ole32.lib shell32.lib shlwapi.lib dxgi.lib dxguid.lib /LIBPATH:src/ext/angle/lib libEGL.dll.lib libGLESv2.dll.lib /DELAYLOAD:libEGL.dll /DELAYLOAD:libGLESv2.dll /OUT:build/bin/orca.dll /IMPLIB:build/bin/orca.dll.lib PS C:\Users\20047\IdeaProjects\OrcaStuff\orca> ``` I'm using a Windows 11 Desktop with 64 bit Windows. ![image](/attachments/cc43349b-a918-4117-a857-b9edefe0c70b)
Author

I thought that upgrading from VS22 17.0.4 to 17.7.4 would fix the issue, but it did not. Full output here:

**********************************************************************
** Visual Studio 2022 Developer PowerShell v17.7.4
** Copyright (c) 2022 Microsoft Corporation
**********************************************************************
PS C:\Users\20047\source\repos\TestApp> cd C:\Users\20047\IdeaProjects\OrcaStuff\orca
PS C:\Users\20047\IdeaProjects\OrcaStuff\orca> ./orca dev build-runtime
Building Orca platform layer...
orca.c
C:\Users\20047\IdeaProjects\OrcaStuff\orca\src\platform/platform.h(37): fatal error C1189: #error:  "Unsupported OS (32bit only version of Windows)"
ERROR: The following command failed with code 2:
cl /nologo /we4013 /Zi /Zc:preprocessor /DOC_BUILD_DLL /std:c11 /experimental:c11atomics /I src /I src/ext /I src/ext/angle/include src/orca.c /Fo:build/bin/orca.o /LD /link /MANIFEST:EMBED /MANIFESTINPUT:src/app/win32_manifest.xml user32.lib opengl32.lib gdi32.lib shcore.lib delayimp.lib dwmapi.lib comctl32.lib ole32.lib shell32.lib shlwapi.lib dxgi.lib dxguid.lib /LIBPATH:src/ext/angle/lib libEGL.dll.lib libGLESv2.dll.lib /DELAYLOAD:libEGL.dll /DELAYLOAD:libGLESv2.dll /OUT:build/bin/orca.dll /IMPLIB:build/bin/orca.dll.lib

Task failed with 1 error:
ERROR: The following command failed with code 2:
cl /nologo /we4013 /Zi /Zc:preprocessor /DOC_BUILD_DLL /std:c11 /experimental:c11atomics /I src /I src/ext /I src/ext/angle/include src/orca.c /Fo:build/bin/orca.o /LD /link /MANIFEST:EMBED /MANIFESTINPUT:src/app/win32_manifest.xml user32.lib opengl32.lib gdi32.lib shcore.lib delayimp.lib dwmapi.lib comctl32.lib ole32.lib shell32.lib shlwapi.lib dxgi.lib dxguid.lib /LIBPATH:src/ext/angle/lib libEGL.dll.lib libGLESv2.dll.lib /DELAYLOAD:libEGL.dll /DELAYLOAD:libGLESv2.dll /OUT:build/bin/orca.dll /IMPLIB:build/bin/orca.dll.lib
PS C:\Users\20047\IdeaProjects\OrcaStuff\orca>
I thought that upgrading from VS22 17.0.4 to 17.7.4 would fix the issue, but it did not. Full output here: ``` ********************************************************************** ** Visual Studio 2022 Developer PowerShell v17.7.4 ** Copyright (c) 2022 Microsoft Corporation ********************************************************************** PS C:\Users\20047\source\repos\TestApp> cd C:\Users\20047\IdeaProjects\OrcaStuff\orca PS C:\Users\20047\IdeaProjects\OrcaStuff\orca> ./orca dev build-runtime Building Orca platform layer... orca.c C:\Users\20047\IdeaProjects\OrcaStuff\orca\src\platform/platform.h(37): fatal error C1189: #error: "Unsupported OS (32bit only version of Windows)" ERROR: The following command failed with code 2: cl /nologo /we4013 /Zi /Zc:preprocessor /DOC_BUILD_DLL /std:c11 /experimental:c11atomics /I src /I src/ext /I src/ext/angle/include src/orca.c /Fo:build/bin/orca.o /LD /link /MANIFEST:EMBED /MANIFESTINPUT:src/app/win32_manifest.xml user32.lib opengl32.lib gdi32.lib shcore.lib delayimp.lib dwmapi.lib comctl32.lib ole32.lib shell32.lib shlwapi.lib dxgi.lib dxguid.lib /LIBPATH:src/ext/angle/lib libEGL.dll.lib libGLESv2.dll.lib /DELAYLOAD:libEGL.dll /DELAYLOAD:libGLESv2.dll /OUT:build/bin/orca.dll /IMPLIB:build/bin/orca.dll.lib Task failed with 1 error: ERROR: The following command failed with code 2: cl /nologo /we4013 /Zi /Zc:preprocessor /DOC_BUILD_DLL /std:c11 /experimental:c11atomics /I src /I src/ext /I src/ext/angle/include src/orca.c /Fo:build/bin/orca.o /LD /link /MANIFEST:EMBED /MANIFESTINPUT:src/app/win32_manifest.xml user32.lib opengl32.lib gdi32.lib shcore.lib delayimp.lib dwmapi.lib comctl32.lib ole32.lib shell32.lib shlwapi.lib dxgi.lib dxguid.lib /LIBPATH:src/ext/angle/lib libEGL.dll.lib libGLESv2.dll.lib /DELAYLOAD:libEGL.dll /DELAYLOAD:libGLESv2.dll /OUT:build/bin/orca.dll /IMPLIB:build/bin/orca.dll.lib PS C:\Users\20047\IdeaProjects\OrcaStuff\orca> ```
Author

cl --version shows that I'm on a version for x86, so that's probably why.

I ran x64 Native Tools Command Prompt for VS 2022 using the Windows 11 search bar and that got me into the correct environment.

Afterwards, I could run .\orca.bat dev build-runtime (but not ./orca dev build-runtime as suggested.)

`cl --version` shows that I'm on a version `for x86`, so that's probably why. I ran `x64 Native Tools Command Prompt for VS 2022` using the Windows 11 search bar and that got me into the correct environment. Afterwards, I could run `.\orca.bat dev build-runtime` (but not `./orca dev build-runtime` as suggested.)
Owner

Reopening this because I want to make the error messages clearer (and explicitly detect when you are in the wrong cl mode)

Reopening this because I want to make the error messages clearer (and explicitly detect when you are in the wrong cl mode)
bvisness reopened this issue 2023-09-17 14:56:57 +00:00
bvisness changed title from Unsupported OS Error to Builds fail with confusing errors on 32-bit Windows 2023-09-17 14:59:07 +00:00
bvisness added the
windows
label 2023-09-17 14:59:14 +00:00
bvisness self-assigned this 2023-09-17 15:45:31 +00:00
bvisness changed title from Builds fail with confusing errors on 32-bit Windows to Need more MSVC prerequisite checks 2023-09-17 19:06:06 +00:00
Owner

Stuff to detect:

  • cl is missing
  • cl is too old (older than 17.7)
  • cl running for wrong architecture (need x64)

Also:

  • update docs to indicate 17.7 requirements
  • switch docs to use python3 orca (or python orca?) instead of ./orca for initial steps
Stuff to detect: - [ ] `cl` is missing - [ ] `cl` is too old (older than 17.7) - [ ] `cl` running for wrong architecture (need x64) Also: - [ ] update docs to indicate 17.7 requirements - [ ] switch docs to use `python3 orca` (or `python orca`?) instead of `./orca` for initial steps
Sign in to join this conversation.
No Label
macOS
windows
No Milestone
No project
No Assignees
2 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: hmn/orca#114
No description provided.