Вирішення проблем
Якщо ваша збірка не вдається, це може бути пов'язано з build.rs
: програмами, які виконують довільні дії під час збирання. Це принципово суперечить принципам роботи gn
та ninja
, які передбачають статичні, детерміновані правила збирання для максимізації паралелізму та повторюваності збірок.
Деякі дії build.rs
підтримуються автоматично, інші потребують втручання:
ефект скрипту збірки | Підтримується нашими шаблонами gn | Робота, яка потрібна від вас |
---|---|---|
Перевірка версії rustc для ввімкнення та вимкнення можливостей | Так | Нічого |
Перевірка платформи або процесора для ввімкнення та вимкнення можливостей | Так | Нічого |
Генерація коду | Так | Так - вкажіть у файлі gnrt_config.toml |
Збірка C/C++ | Немає | Залатати навколо |
Довільні інші дії | Немає | Залатати навколо |
На щастя, більшість крейтів не містять скриптів збірки, і, на щастя, більшість скриптів збірки виконують лише перші дві дії.