Как использовать код ржавчины в проекте C, не меняя систему сборки? - PullRequest
1 голос
/ 17 октября 2019

Я пытался портировать nano на ржавчину и использую, но я не хочу менять систему сборки или иметь две параллельные системы сборки в одном проекте.

Для использования ржавчины в проекте C янашел это руководство но для этого нужно либо изменить систему сборки, либо использовать гибридный подход (т.е. использовать две системы сборки одновременно).

1 Ответ

0 голосов
/ 01 ноября 2019

rustc можно вызвать аналогично cc и создать C-совместимую статическую библиотеку. Если вы добавляете только небольшой кусочек Rust, который не использует зависимости Cargo, это может быть легко интегрировано в системы сборки C.

Однако, используя rustc напрямую, вы теряете доступ к Cargo,и он будет использовать зависимости так же тяжело и мучительно, как C-deps, за исключением того, что программы Rust привыкли использовать сотни зависимостей.

Таким образом, простой выход - вызвать cargo build --release из существующей системы сборки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...