Skip to content

Can't update AGAIN #26756

@milen-prg

Description

@milen-prg

Describe the bug

Windows 11 Pro 64bit.
After long time successful updates of V with v up (until before one or 2 weeks all was OK), but now:

c:\v on   master ▓▒░ git pull && git submodule update --recursive
.....
after that:
❯ v up
Updating V...

git_command: git pull https://github.com/vlang/v master
backing up cmd/tools/vup.exe to cmd/tools/vup.exe_old.exe ...
"C:\v\v.exe" self failed, running make...
running make ...
make.bat failed:
make output:
Updating TCC
Syncing TCC from https://github.com/vlang/tccbin

Updating vc...

Sync with remote https://github.com/vlang/vc
Updating files: 100% (2/2), done.

Building V...

Attempting to build "./v_win_bootstrap.exe" (from ./vc/v.c) with "C:\v\thirdparty\tcc\tcc.exe"
In file included from ./vc/v.c:1138:
./vc/v.c:1138: error: include file 'sys/mman.h' not found

Backend compiler error

Exiting from error
ERROR: please follow the instructions in https://github.com/vlang/v/wiki/Installing-a-C-compiler-on-Windows

Current V version: V 0.5.1 e2a7043, timestamp: 2026-03-15 18:05:32 +0300
Recompiling V failed.
Try running make.bat .

And:

---- MAKE in c:\v at 22.3.2026 г. 14:30:01 --------------------------------------------------------
❯ make.bat
Updating TCC

Syncing TCC from https://github.com/vlang/tccbin

Updating vc...

Sync with remote https://github.com/vlang/vc

Building V...

Attempting to build "./v_win_bootstrap.exe" (from ./vc/v.c) with "c:\v\thirdparty\tcc\tcc.exe"
In file included from ./vc/v.c:1138:
./vc/v.c:1138: error: include file 'sys/mman.h' not found

Backend compiler error

Exiting from error
ERROR: please follow the instructions in https://github.com/vlang/v/wiki/Installing-a-C-compiler-on-Windows

Reproduction Steps

Just try to update on Windows.

Expected Behavior

Update successfully as long time until now.

Current Behavior

ERROR!

Possible Solution

No response

Additional Information/Context

No response

V version

V 0.5.1 e2a7043

Environment details (OS name and version, etc.)

❯ v doctor
cannot compile C:\v\cmd\tools\vdoctor.v: 1
vlib/builtin/closure/closure.c.v:111:13: error: undefined ident: ppc64
109 | 0x01, 0x00, 0x00, 0x00 // nop
110 | ]!
111 | } $else $if ppc64 {
| ~~~~~
112 | [
113 | u8(0x7C), 0x08, 0x02, 0xA6, // mflr %r0
vlib/builtin/closure/closure.c.v:111:13: error: unknown var: ppc64
109 | 0x01, 0x00, 0x00, 0x00 // nop
110 | ]!
111 | } $else $if ppc64 {
| ~~~~~
112 | [
113 | u8(0x7C), 0x08, 0x02, 0xA6, // mflr %r0
vlib/builtin/closure/closure.c.v:184:13: error: undefined ident: ppc64
182 | 0x01, 0x00, 0x00, 0x00 // nop
183 | ]!
184 | } $else $if ppc64 {
| ~~~~~
185 | [
186 | u8(0x7d), 0xc3, 0x00, 0x66, // mfvsrd %r3, %f14
vlib/builtin/closure/closure.c.v:184:13: error: unknown var: ppc64
182 | 0x01, 0x00, 0x00, 0x00 // nop
183 | ]!
184 | } $else $if ppc64 {
| ~~~~~
185 | [
186 | u8(0x7d), 0xc3, 0x00, 0x66, // mfvsrd %r3, %f14
vlib/builtin/closure/closure.c.v:249:6: error: undefined ident: ppc64
247 | }
248 | // Setup global closure handler pointer
249 | $if ppc64 {
| ~~~~~
250 | mut desc := unsafe { &voidptr(&u8(g_closure.closure_ptr) - assumed_page_size) }
251 | unsafe {
vlib/builtin/closure/closure.c.v:249:6: error: unknown var: ppc64
247 | }
248 | // Setup global closure handler pointer
249 | $if ppc64 {
| ~~~~~
250 | mut desc := unsafe { &voidptr(&u8(g_closure.closure_ptr) - assumed_page_size) }
251 | unsafe {
vlib/builtin/closure/closure.c.v:286:7: error: undefined ident: ppc64
284 | // Write closure metadata (data + function pointer)
285 | mut p := &voidptr(&u8(curr_closure) - assumed_page_size)
286 | $if ppc64 {
| ~~~~~
287 | // ELFv1: guard page layout per slot:
288 | // [0] desc[0] = thunk code address <- returned as ELFv1 function pointer
vlib/builtin/closure/closure.c.v:286:7: error: unknown var: ppc64
284 | // Write closure metadata (data + function pointer)
285 | mut p := &voidptr(&u8(curr_closure) - assumed_page_size)
286 | $if ppc64 {
| ~~~~~
287 | // ELFv1: guard page layout per slot:
288 | // [0] desc[0] = thunk code address <- returned as ELFv1 function pointer
vlib/builtin/closure/closure.c.v:304:6: error: undefined ident: ppc64
302 |
303 | // Return executable closure object
304 | $if ppc64 {
| ~~~~~
305 | // ELFv1: return descriptor address (guard page), not raw code address
306 | return unsafe { &u8(curr_closure) - assumed_page_size }
vlib/builtin/closure/closure.c.v:304:6: error: unknown var: ppc64
302 |
303 | // Return executable closure object
304 | $if ppc64 {
| ~~~~~
305 | // ELFv1: return descriptor address (guard page), not raw code address
306 | return unsafe { &u8(curr_closure) - assumed_page_size }
If the code of your project is in a folder with multiple .v files, try v C:\v\cmd\tools instead of v C:\v\cmd\tools\vdoctor.v

Note

You can use the 👍 reaction to increase the issue's priority for developers.

Please note that only the 👍 reaction to the issue itself counts as a vote.
Other reactions and those to comments will not be taken into account.

Metadata

Metadata

Assignees

No one assigned

    Labels

    BugThis tag is applied to issues which reports bugs.Status: ConfirmedThis bug has been confirmed to be valid by a contributor.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions