Есть ли такая команда, как pnacl-compress
, для сжатия уже скомпилированного собственного файла клиента .nexe
?
Спасибо
Есть ли такая команда, как pnacl-compress
, для сжатия уже скомпилированного собственного файла клиента .nexe
?
Спасибо
pnacl-bccompress
сжимает .pexe
файл. .nexe
имеют формат x86-32, x86-64, ARM или MIPS, и их сжатие является более сложным и, вероятно, не лучшим подходом.
Вместо этого я предлагаю поиграть с параметрами командной строки LLVM, чтобы сгенерировать файлы битового кода меньшего размера, что приведет к меньшим файлам .nexe
. Сначала запустите pnacl-clang
с --pnacl-driver-verbose
, чтобы увидеть запущенные командные строки. Затем добавьте или удалите параметры из opt
(обратите внимание, что их порядок важен!). Особенно полезным будет встроенный порог и mergefuncs
. Вы можете дизассемблировать промежуточные файлы битового кода с помощью llvm-dis
, чтобы увидеть, есть ли там что-то неожиданное, или не генерирует ли LLVM слишком большие функции или глобальные переменные. В LLVM есть множество других параметров командной строки, с которыми можно поиграться, но они вообще не относятся к [P]NaCl, поэтому я не буду их здесь перечислять.