leafac / caxa

📦 Package Node.js applications into executable binaries 📦
https://npm.im/caxa
699 stars 34 forks source link

Building Executable On Windows Creates Extremely Large File #49

Closed ypinskiy closed 11 months ago

ypinskiy commented 2 years ago

I have a very simple node app/ESM meant to be run from the command line with 1 entry point, index.js.

I am running caxa in the root folder of the project with the command caxa --input . --output build.exe -- "{{caxa}}/node_modules/.bin/node" "{{caxa}}/index.js"

This process takes several minutes and then produces a 14.6 GB executable. Running that executable from either the command line or by double-clicking causes Windows to show an error message: "This app can't be run on this version of Windows"

caxa version: 2.1.0 Windows 10 Node version: 17.3.0 NPM version: 8.5.0

leafac commented 2 years ago

Thanks for reaching out.

Can you please try packaging a “hello world” kind of application, like https://github.com/leafac/caxa/tree/main/examples/echo-command-line-parameters ?

This will help us figure out if the issue has to do with your system or with your application. (By the way, whether the application is ESM or not shouldn’t make any difference. For example, My main use for caxa, https://github.com/courselore/courselore, is ESM.)

damartripamungkas commented 1 year ago

same problem, is there any solution for this

papb commented 1 year ago

@damartripamungkas can you try what @leafac suggested and let us know please?

Edit: nevermind, I've just seen your issue at #78, seems a valid hello-world to me

damartripamungkas commented 1 year ago

@damartripamungkas can you try what @leafac suggested and let us know please?

Edit: nevermind, I've just seen your issue at #78, seems a valid hello-world to me

that problem has been resolved

damartripamungkas commented 1 year ago

try deleting the binary .exe file every time you want to recompile

leafac commented 11 months ago

Hi y’all,

Thanks for using caxa and for the conversation here.

I’ve been thinking about the broad strategy employed by caxa and concluded that there is a better way to solve the problem. It should create reasonably sized packages. Can you please give it a try and report back?

It’s a different enough approach that I think it deserves a new name, and it’s part of a bigger toolset that I’m building, which I call Radically Straightforward · Package.

I’m deprecating caxa and archiving this repository. I invite you to continue the conversation in Radically Straightforward’s issues.

Best.