pmq20 / node-packer

Packing your Node.js application into a single executable.
MIT License
3.07k stars 202 forks source link

Squashfs 4.0 Error array, size too big (ArgumentError) #120

Closed Dcros closed 6 years ago

Dcros commented 6 years ago

Hello to everyone i have a project that have like 3,5GB of size and i want to make an exe to my server-side like W:\javascriptProject\jarvisa0.1clean> nodec src/server.js --clean-tmpdir... it starts well, everytrhing okey... but then an error happend::::::::::

W:\javascriptProject\jarvisa0.1clean>nodec src/server.js --clean-tmpdir Node.js Compiler (nodec) v1.5.0

=== WARNING === Please make sure to have installed the correct version of node in your environment. It should match the enclosed Node.js runtime version of the compiler. Expecting v8.3.0; yet got v8.11.1.

-> rm -rf C:/Users/mrx/AppData/Local/Temp/nodec -> mkdir -p C:/Users/mrx/AppData/Local/Temp/nodec -> cp -r "W:/enclose_io_memfs/local/node" "C:/Users/mrx/AppData/Local/Temp/nodec/node-8.3.0-1.5.0" -> rm -rf C:/Users/mrx/AppData/Local/Temp/nodec/work_dir -> mkdir -p C:/Users/mrx/AppData/Local/Temp/nodec/work_dir -> cp -r "W:/javascriptProject/jarvisa0.1clean" "C:/Users/mrx/AppData/Local/Temp/nodec/work_dir/enclose_io_memfs" -> cd C:/Users/mrx/AppData/Local/Temp/nodec/work_dir/enclose_io_memfs -> Running ["\"npm\" -v"] 5.8.0 -> Running ["\"npm\" install --production"] npm WARN jarvisia@1.0.0 No description npm WARN jarvisia@1.0.0 No repository field.

up to date in 1.633s -> cd W:/javascriptProject/jarvisa0.1clean -> cd C:/Users/mrx/AppData/Local/Temp/nodec/__work_dir/enclose_io_memfs__ -> cd W:/javascriptProject/jarvisa0.1clean -> cd C:/Users/mrx/AppData/Local/Temp/nodec/node-8.3.0-1.5.0 -> rm -f deps/libsquash/sample/enclose_io_memfs.squashfs -> rm -f deps/libsquash/sample/enclose_io_memfs.c -> Running ["mksquashfs -version"] mksquashfs version 4.3 (2014/05/12) copyright (C) 2014 Phillip Lougher phillip@squashfs.org.uk

[----------------------------------------------------------] Compiled by Sebastiaan Ebeltjes @ 2015-06-08 (Domoticx.nl) Compiled with Cygwin on Windows 8.1, compiler: GCC v4.9.2

This version comes with added support for:

Enjoy!

[----------------------------------------------------------]

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -> Running ["mksquashfs \"C:/Users/mrx/AppData/Local/Temp/nodec/__work_dir__\" deps/libsquash/sample/enclose_io_memfs.squashfs"] Parallel mksquashfs: Using 4 processors Creating 4.0 filesystem on deps/libsquash/sample/enclose_io_memfs.squashfs, block size 131072. [===================================================================================================-] 47134/47134 100%

Exportable Squashfs 4.0 filesystem, gzip compressed, data block size 131072 compressed data, compressed metadata, compressed fragments, compressed xattrs duplicates are removed Filesystem size 1460087.95 Kbytes (1425.87 Mbytes) 39.18% of uncompressed filesystem size (3726371.04 Kbytes) Inode table size 275400 bytes (268.95 Kbytes) 32.02% of uncompressed inode table size (859959 bytes) Directory table size 235610 bytes (230.09 Kbytes) 40.53% of uncompressed directory table size (581266 bytes) Number of duplicate files found 1389 Number of inodes 23330 Number of files 19961 Number of fragments 1613 Number of symbolic links 0 Number of device nodes 0 Number of fifo nodes 0 Number of socket nodes 0 Number of directories 3369 Number of ids (unique uids + gids) 1 Number of uids 1 mrx (197609) Number of gids 1 mrx (197609) W:/enclose_io_memfs/local/lib/compiler.rb:305:in bytes': array size too big (ArgumentError) from W:/__enclose_io_memfs__/local/lib/compiler.rb:305:inblock in make_enclose_io_memfs' from W:/enclose_io_memfs/local/lib/compiler/utils.rb:46:in block in chdir' from W:/__enclose_io_memfs__/local/lib/compiler/utils.rb:46:inchdir' from W:/enclose_io_memfs/local/lib/compiler/utils.rb:46:in chdir' from W:/__enclose_io_memfs__/local/lib/compiler.rb:290:inmake_enclose_io_memfs' from W:/enclose_io_memfs/local/lib/compiler.rb:186:in run!' from /__enclose_io_memfs__/local/bin/nodec:154:in

'

i know its a big size but its there a way to ignore that array size error like just force it to works no matter how many time take to complete?

Thanks everyone for the time :)

Dcros commented 6 years ago

Okey so the solution for this cases its put the heavy libs as global and use them from your pc global node_modules.