Чтобы уменьшить размер исполняемой программы Rust (в моем коде это называется runtime
), я пытаюсь сжать ее, а затем включить во вторую программу (называемую szl
), которая распаковывает и выполняет ее. .
Я сделал это с помощью Car go сценария сборки в szl
, который открывает двоичный файл вывода из runtime
, сжимает его, а затем генерирует файл, который готов к использованию include_bytes!
.
Проблема этого подхода заключается в том, что зависимости не обрабатываются должным образом. Например, Car go может попытаться собрать szl
до runtime
(и потерпеть неудачу), а когда исходный код runtime
изменен, szl
не перестраивается.
Есть ли способ сообщить Car go, что szl
зависит от двоичного файла из runtime
(и транзитивно от исходного кода runtime
), или я должен использовать другой подход, такой как внешний Makefile?