Как сжать собственный двоичный файл клиента .nexe

Есть ли такая команда, как pnacl-compress, для сжатия уже скомпилированного собственного файла клиента .nexe?

Спасибо


person KaBa    schedule 13.03.2015    source источник


Ответы (1)


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, поэтому я не буду их здесь перечислять.

person JF Bastien    schedule 13.03.2015