Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Janet 1.30 - Spork not building on Windows 11 Pro Build 22621 #150

Closed
mvoltz opened this issue Aug 15, 2023 · 3 comments
Closed

Janet 1.30 - Spork not building on Windows 11 Pro Build 22621 #150

mvoltz opened this issue Aug 15, 2023 · 3 comments

Comments

@mvoltz
Copy link

mvoltz commented Aug 15, 2023

janet -v
1.30.0-local

jpm install spork
From https://github.com/janet-lang/spork

  • branch HEAD -> FETCH_HEAD
    HEAD is now at ce3e437 Merge pull request Add functions for primality testing #145 from primo-ppcg/modular-arithmetic
    compiling src/zip.c to build/src___zip.o...
    error: failed to create process
    compiling deps/miniz/miniz.c to build/deps___miniz___miniz.o...
    error: failed to create process
    compiling src/json.c to build/src___json.o...
    error: failed to create process
    compiling src/tarray.c to build/src___tarray.o...
    error: failed to create process
    compiling src/utf8.c to build/src___utf8.o...
    error: failed to create process
    compiling src/rawterm.c to build/src___rawterm.o...
    error: failed to create process
    compiling src/cmath.c to build/src___cmath.o...
    error: failed to create process
    compiling src/crc.c to build/src___crc.o...
    error: failed to create process
    error: build fail
    in pdag [C:/Users/.../Local/Apps/Janet/Library/jpm/dagbuild.janet] (tailcall) on line 79, column 23
    in [C:/Users/.../Local/Apps/Janet/Library/jpm/pm.janet] on line 236, column 9
    in [C:/Users/.../Local/Apps/Janet/Library/jpm/pm.janet] on line 221, column 5
    in bundle-install [C:/Users/.../Local/Apps/Janet/Library/jpm/pm.janet] on line 219, column 3
    in install [C:/Users/.../Local/Apps/Janet/Library/jpm/commands.janet] on line 197, column 20
    in run [C:/Users/.../Local/Apps/Janet/Library/jpm/cli.janet] (tailcall) on line 88, column 9
    in run-main [boot.janet] on line 3883, column 16
    in cli-main [boot.janet] on line 4036, column 17
@sogaiu
Copy link
Contributor

sogaiu commented Aug 16, 2023

I don't have Windows 11 to test.

FWIW, on Windows 10 Home 22H2 19045_3208, it works here if I execute the command via "x64 Native Tools Command Prompt" (comes with various VisualStudio versions though may be available via other means [1]).

C:\Users\user\Desktop\janet>janet -v 1.30.0-local

C:\Users\user\Desktop\janet>jpm install spork
remote: Enumerating objects: 129, done.
remote: Counting objects: 100% (126/126), done.
remote: Compressing objects: 100% (54/54), done.
remote: Total 129 (delta 77), reused 110 (delta 72), pack-reused 3
Receiving objects: 100% (129/129), 73.39 KiB | 6.67 MiB/s, done.
Resolving deltas: 100% (77/77), completed with 4 local objects.
From https://github.com/janet-lang/spork
876974b..ce3e437 master -> origin/master
From https://github.com/janet-lang/spork

  • branch HEAD -> FETCH_HEAD
    HEAD is now at ce3e437 Merge pull request Add functions for primality testing #145 from primo-ppcg/modular-arithmetic
    compiling src/cmath.c to build/src___cmath.o...
    generating meta file build/spork/cmath.meta.janet...
    compiling src/cmath.c to build/src___cmath.static.o...
    creating native module build/spork/cmath.dll...
    creating static library build/spork/cmath.static.lib...
    removing C:\Users\user\AppData\Local\Apps\Janet\Library/spork
    removing C:\Users\user\AppData\Local\Apps\Janet\bin/janet-format
    removing C:\Users\user\AppData\Local\Apps\Janet\bin/janet-format.bat
    removing C:\Users\user\AppData\Local\Apps\Janet\bin/janet-netrepl
    removing C:\Users\user\AppData\Local\Apps\Janet\bin/janet-netrepl.bat
    removing C:\Users\user\AppData\Local\Apps\Janet\Library/spork/json.dll
    removing C:\Users\user\AppData\Local\Apps\Janet\Library/spork/json.meta.janet
    removing C:\Users\user\AppData\Local\Apps\Janet\Library/spork/json.static.lib
    removing C:\Users\user\AppData\Local\Apps\Janet\Library/spork/rawterm.dll
    removing C:\Users\user\AppData\Local\Apps\Janet\Library/spork/rawterm.meta.janet
    removing C:\Users\user\AppData\Local\Apps\Janet\Library/spork/rawterm.static.lib
    removing C:\Users\user\AppData\Local\Apps\Janet\Library/spork/crc.dll
    removing C:\Users\user\AppData\Local\Apps\Janet\Library/spork/crc.meta.janet
    removing C:\Users\user\AppData\Local\Apps\Janet\Library/spork/crc.static.lib
    removing C:\Users\user\AppData\Local\Apps\Janet\Library/spork/utf8.dll
    removing C:\Users\user\AppData\Local\Apps\Janet\Library/spork/utf8.meta.janet
    removing C:\Users\user\AppData\Local\Apps\Janet\Library/spork/utf8.static.lib
    removing C:\Users\user\AppData\Local\Apps\Janet\Library/spork/tarray.dll
    removing C:\Users\user\AppData\Local\Apps\Janet\Library/spork/tarray.meta.janet
    removing C:\Users\user\AppData\Local\Apps\Janet\Library/spork/tarray.static.lib
    removing C:\Users\user\AppData\Local\Apps\Janet\Library//tarray.h
    removing C:\Users\user\AppData\Local\Apps\Janet\Library/spork/zip.dll
    removing C:\Users\user\AppData\Local\Apps\Janet\Library/spork/zip.meta.janet
    removing C:\Users\user\AppData\Local\Apps\Janet\Library/spork/zip.static.lib
    removing manifest C:\Users\user\AppData\Local\Apps\Janet\Library/.manifests/spork.jdn
    Uninstalled.
    generating C:\Users\user\AppData\Local\Apps\Janet\Library/.manifests/spork.jdn...
    Installed as 'spork'.
    copying spork to C:\Users\user\AppData\Local\Apps\Janet\Library...
    spork\argparse.janet
    spork\base64.janet
    spork\build-rules.janet
    spork\cjanet.janet
    spork\cron.janet
    spork\data.janet
    spork\ev-utils.janet
    spork\fmt.janet
    spork\generators.janet
    spork\getline.janet
    spork\htmlgen.janet
    spork\http.janet
    spork\httpf.janet
    spork\init.janet
    spork\math.janet
    spork\mdz.janet
    spork\misc.janet
    spork\msg.janet
    spork\netrepl.janet
    spork\path.janet
    spork\pgp.janet
    spork\randgen.janet
    spork\regex.janet
    spork\rpc.janet
    spork\schema.janet
    spork\services.janet
    spork\sh.janet
    spork\tasker.janet
    spork\temple.janet
    spork\test.janet
    30 File(s) copied
    installing bin/janet-format to C:\Users\user\AppData\Local\Apps\Janet\bin/janet-format
    installing bin/janet-netrepl to C:\Users\user\AppData\Local\Apps\Janet\bin/janet-netrepl
    copying build/spork/json.dll to C:\Users\user\AppData\Local\Apps\Janet\Library/spork...
    build\spork\json.dll
    1 File(s) copied
    copying build/spork/json.meta.janet to C:\Users\user\AppData\Local\Apps\Janet\Library/spork...
    build\spork\json.meta.janet
    1 File(s) copied
    copying build/spork/json.static.lib to C:\Users\user\AppData\Local\Apps\Janet\Library/spork...
    build\spork\json.static.lib
    1 File(s) copied
    copying build/spork/rawterm.dll to C:\Users\user\AppData\Local\Apps\Janet\Library/spork...
    build\spork\rawterm.dll
    1 File(s) copied
    copying build/spork/rawterm.meta.janet to C:\Users\user\AppData\Local\Apps\Janet\Library/spork...
    build\spork\rawterm.meta.janet
    1 File(s) copied
    copying build/spork/rawterm.static.lib to C:\Users\user\AppData\Local\Apps\Janet\Library/spork...
    build\spork\rawterm.static.lib
    1 File(s) copied
    copying build/spork/crc.dll to C:\Users\user\AppData\Local\Apps\Janet\Library/spork...
    build\spork\crc.dll
    1 File(s) copied
    copying build/spork/crc.meta.janet to C:\Users\user\AppData\Local\Apps\Janet\Library/spork...
    build\spork\crc.meta.janet
    1 File(s) copied
    copying build/spork/crc.static.lib to C:\Users\user\AppData\Local\Apps\Janet\Library/spork...
    build\spork\crc.static.lib
    1 File(s) copied
    copying build/spork/utf8.dll to C:\Users\user\AppData\Local\Apps\Janet\Library/spork...
    build\spork\utf8.dll
    1 File(s) copied
    copying build/spork/utf8.meta.janet to C:\Users\user\AppData\Local\Apps\Janet\Library/spork...
    build\spork\utf8.meta.janet
    1 File(s) copied
    copying build/spork/utf8.static.lib to C:\Users\user\AppData\Local\Apps\Janet\Library/spork...
    build\spork\utf8.static.lib
    1 File(s) copied
    copying build/spork/tarray.dll to C:\Users\user\AppData\Local\Apps\Janet\Library/spork...
    build\spork\tarray.dll
    1 File(s) copied
    copying build/spork/tarray.meta.janet to C:\Users\user\AppData\Local\Apps\Janet\Library/spork...
    build\spork\tarray.meta.janet
    1 File(s) copied
    copying build/spork/tarray.static.lib to C:\Users\user\AppData\Local\Apps\Janet\Library/spork...
    build\spork\tarray.static.lib
    1 File(s) copied
    copying src/tarray.h to C:\Users\user\AppData\Local\Apps\Janet\Library/...
    src\tarray.h
    1 File(s) copied
    copying build/spork/zip.dll to C:\Users\user\AppData\Local\Apps\Janet\Library/spork...
    build\spork\zip.dll
    1 File(s) copied
    copying build/spork/zip.meta.janet to C:\Users\user\AppData\Local\Apps\Janet\Library/spork...
    build\spork\zip.meta.janet
    1 File(s) copied
    copying build/spork/zip.static.lib to C:\Users\user\AppData\Local\Apps\Janet\Library/spork...
    build\spork\zip.static.lib
    1 File(s) copied
    copying build/spork/cmath.dll to C:\Users\user\AppData\Local\Apps\Janet\Library/spork...
    build\spork\cmath.dll
    1 File(s) copied
    copying build/spork/cmath.meta.janet to C:\Users\user\AppData\Local\Apps\Janet\Library/spork...
    build\spork\cmath.meta.janet
    1 File(s) copied
    copying build/spork/cmath.static.lib to C:\Users\user\AppData\Local\Apps\Janet\Library/spork...
    build\spork\cmath.static.lib
    1 File(s) copied

[1] See here for some further details if interested.

@primo-ppcg
Copy link
Contributor

primo-ppcg commented Aug 16, 2023

I execute the command via "x64 Native Tools Command Prompt"

I think that may be the issue. "Failed to create process" seems like it can't find the compiler.


I've tried to replicate the issue. I have done the following:

  • Installed Janet on Windows using the msi installer
  • Installed jpm by downloading the source, and using janet bootstrap.janet
  • Attempted to install spork from cmd, and from "x64 Native Tools Command Prompt"

Build from cmd
HEAD is now at ce3e437 Merge pull request #145 from primo-ppcg/modular-arithmetic
compiling src/json.c to build/src___json.o...
error: failed to create process
compiling src/crc.c to build/src___crc.o...
error: failed to create process
compiling src/zip.c to build/src___zip.o...
error: failed to create process
compiling src/utf8.c to build/src___utf8.o...
error: failed to create process
compiling src/cmath.c to build/src___cmath.o...
error: failed to create process
compiling src/tarray.c to build/src___tarray.o...
error: failed to create process
generating meta file build/spork/json.meta.janet...
compiling deps/miniz/miniz.c to build/deps___miniz___miniz.o...
error: failed to create process
generating meta file build/spork/zip.meta.janet...
compiling src/rawterm.c to build/src___rawterm.o...
error: failed to create process
generating meta file build/spork/crc.meta.janet...
generating meta file build/spork/utf8.meta.janet...
generating meta file build/spork/rawterm.meta.janet...
generating meta file build/spork/tarray.meta.janet...
generating meta file build/spork/cmath.meta.janet...
error: build fail

The error is precisely the same as reported.


Build from x64 Native Tools Command Prompt
HEAD is now at ce3e437 Merge pull request #145 from primo-ppcg/modular-arithmetic
compiling src/json.c to build/src___json.o...
generating meta file build/spork/utf8.meta.janet...
compiling src/crc.c to build/src___crc.o...
compiling src/utf8.c to build/src___utf8.o...
generating meta file build/spork/json.meta.janet...
compiling src/rawterm.c to build/src___rawterm.o...
generating meta file build/spork/rawterm.meta.janet...
generating meta file build/spork/crc.meta.janet...
compiling src/tarray.c to build/src___tarray.o...
generating meta file build/spork/tarray.meta.janet...
compiling src/zip.c to build/src___zip.o...
compiling deps/miniz/miniz.c to build/deps___miniz___miniz.o...
generating meta file build/spork/zip.meta.janet...
compiling src/cmath.c to build/src___cmath.o...
generating meta file build/spork/cmath.meta.janet...
compiling src/utf8.c to build/src___utf8.static.o...
creating native module build/spork/utf8.dll...
compiling src/zip.c to build/src___zip.static.o...
creating native module build/spork/cmath.dll...
compiling src/cmath.c to build/src___cmath.static.o...
creating native module build/spork/crc.dll...
compiling src/crc.c to build/src___crc.static.o...
compiling src/json.c to build/src___json.static.o...
creating native module build/spork/json.dll...
creating native module build/spork/tarray.dll...
compiling src/tarray.c to build/src___tarray.static.o...
creating native module build/spork/rawterm.dll...
compiling src/rawterm.c to build/src___rawterm.static.o...
creating native module build/spork/zip.dll...
compiling deps/miniz/miniz.c to build/deps___miniz___miniz.static.o...
creating static library build/spork/utf8.static.lib...
creating static library build/spork/cmath.static.lib...
creating static library build/spork/crc.static.lib...
creating static library build/spork/json.static.lib...
creating static library build/spork/tarray.static.lib...
creating static library build/spork/rawterm.static.lib...
creating static library build/spork/zip.static.lib...
generating %UserProfile%\AppData\Local\Apps\Janet\Library\/.manifests/spork.jdn...
Installed as 'spork'.

The build succeeds.

@mvoltz
Copy link
Author

mvoltz commented Aug 16, 2023

Apologies, I didn't do a great job isolating my changes but it works now. You were correct. I needed VS command prompt to compile properly, but it was still breaking for me in different ways (broken externals). I installed Wix311 and added "C++ Modules for v143 build tools (x64/x86 - experimental)". I uninstalled Janet then reinstalled, tried again, and spork built just fine.
Note: I'm using the release installer and not compiling Janet from source.

Thank you, sogaiu and primo-ppcg, for your help.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants