2013-03-18 2 views
4

Есть ли стандартный способ включения .c исходных файлов?Использование .c исходных файлов с Rust

До сих пор я использую extern "C" { ... } подвергать функции, компиляции .c объектный файл, работающий rustc до л.д. не дроссели с неопределенным ссылкой, и используя аргументы, приведенные после error: linking with 'cc' failed with code 1; note: cc arguments: ... запустить cc myobjfile.o ...

ответ

4

Лукман дал намек на IRC; используя extern "C" { ... } с #[link_args="src/source.c"]; в файле ящика работает для меня.

+2

Это умный. Я никогда не видел, чтобы кто-то делал это раньше, и не обязательно ожидал, что это продолжит работу навсегда. Это работает, потому что Rust использует компилятор C (в настоящее время всегда gcc или clang) для управления финальным этапом ссылки. – brson

+2

(я бы ожидал, что он перестанет работать в относительно ближайшем будущем, на данный момент) –

Смежные вопросы