Can't build wine-portable-executable
miki-japonais opened this issue · 5 comments
Hi!
I was trying to build a wine portable.sh but I am always getting a 1,3 MB file.
I have the chroots under /home/builder/chroots/
I'd like to have wine-5.7-staging-improved-amd64.tar.xz portable executable but like I said, I not getting it right.
What I am doing wrong ?
-
create_ubuntu_chroots.sh
-
create_wine_runtime.sh (I have edited the paths to chroots else it wont work)
-
build_squashfuse.sh
-
create_wine_portable.sh
Please show me the output of the mksquashfs
command.
SYNTAX:mksquashfs source1 source2 ... dest [options] [-e list of exclude
dirs/files]
Filesystem build options:
-comp select compression
Compressors available:
gzip (default)
lzma
lzo
lz4
xz
-b <block_size> set data block to <block_size>. Default 128 Kbytes
Optionally a suffix of K or M can be given to specify
Kbytes or Mbytes respectively
-no-exports don't make the filesystem exportable via NFS
-no-sparse don't detect sparse files
-no-xattrs don't store extended attributes
-xattrs store extended attributes (default)
-noI do not compress inode table
-noD do not compress data blocks
-noF do not compress fragment blocks
-noX do not compress extended attributes
-no-fragments do not use fragments
-always-use-fragments use fragment blocks for files larger than block size
-no-duplicates do not perform duplicate checking
-all-root make all files owned by root
-force-uid uid set all file uids to uid
-force-gid gid set all file gids to gid
-nopad do not pad filesystem to a multiple of 4K
-keep-as-directory if one source directory is specified, create a root
directory containing that directory, rather than the
contents of the directory
-fstime secs Set fs time to seconds since epoch. Default to current time
Filesystem filter options:
-p Add pseudo file definition
-pf Add list of pseudo file definitions
-sort <sort_file> sort files according to priorities in <sort_file>. One
file or dir with priority per line. Priority -32768 to
32767, default priority 0
-ef <exclude_file> list of exclude dirs/files. One per line
-wildcards Allow extended shell wildcards (globbing) to be used in
exclude dirs/files
-regex Allow POSIX regular expressions to be used in exclude
dirs/files
Filesystem append options:
-noappend do not append to existing filesystem
-root-becomes when appending source files/directories, make the
original root become a subdirectory in the new root
called , rather than adding the new source items
to the original root
Mksquashfs runtime options:
-version print version, licence and copyright message
-exit-on-error treat normally ignored errors as fatal
-recover recover filesystem data using recovery file
-no-recovery don't generate a recovery file
-info print files written to filesystem
-no-progress don't display the progress bar
-progress display progress bar when using the -info option
-processors Use processors. By default will use number of
processors available
-mem Use physical memory. Currently set to 3983M
Optionally a suffix of K, M or G can be given to specify
Kbytes, Mbytes or Gbytes respectively
Miscellaneous options:
-root-owned alternative name for -all-root
-noInodeCompression alternative name for -noI
-noDataCompression alternative name for -noD
-noFragmentCompression alternative name for -noF
-noXattrCompression alternative name for -noX
-Xhelp print compressor options for selected compressor
Compressors available and compressor specific options:
gzip (default)
-Xcompression-level
should be 1 .. 9 (default 9)
-Xwindow-size
should be 8 .. 15 (default 15)
-Xstrategy strategy1,strategy2,...,strategyN
Compress using strategy1,strategy2,...,strategyN in turn
and choose the best compression.
Available strategies: default, filtered, huffman_only,
run_length_encoded and fixed
lzma (no options)
lzo
-Xalgorithm
Where is one of:
lzo1x_1
lzo1x_1_11
lzo1x_1_12
lzo1x_1_15
lzo1x_999 (default)
-Xcompression-level
should be 1 .. 9 (default 8)
Only applies to lzo1x_999 algorithm
lz4
-Xhc
Compress using LZ4 High Compression
xz
-Xbcj filter1,filter2,...,filterN
Compress using filter1,filter2,...,filterN in turn
(in addition to no filter), and choose the best compression.
Available filters: x86, arm, armthumb, powerpc, sparc, ia64
-Xdict-size
Use as the XZ dictionary size. The dictionary size
can be specified as a percentage of the block size, or as an
absolute value. The dictionary size must be less than or equal
to the block size and 8192 bytes or larger. It must also be
storable in the xz header as either 2^n or as 2^n+2^(n+1).
Example dict-sizes are 75%, 50%, 37.5%, 25%, or 32K, 16K, 8K
etc.
Ok, so the problem is that the create_wine_portable.sh script uses zstd compressor by default and your squashfs-tools version doesn't support it.
The solution is to edit two env variables (squashfs_compressor and compressor_arguments) inside the create_wine_portable.sh script:
squashfs_compressor="lz4"
compressor_arguments="-Xhc"
It works now :D
Thanks for your help
You're welcome!