2014-10-17 4 views
0

Я хочу создать библиотеку для ржавчины. Это файл Cargo.toml для моего проекта:Cargo.toml для lib

[package] 
name = "binary_tree" 
version = "0.0.1" 
authors = ["Guillaume Bersac <[email protected]>"] 

[lib] 
test = true 
plugin = false 

Это файл из моего репозитория:

Cargo.toml 
README.md 
src 
|_node.rs 

Когда я запускаю команду «груз запустить» или «грузовая сборку» или «груз тест», я получаю следующее сообщение об ошибке:

Cargo.toml не является действительным манифеста

ожидается значение типа array, но нашел значение типа table для ключа lib

Как отформатировать Cargo.toml так, чтобы он правильно компилировать?

+2

Какие версии грузовых автомобилей и ржавчины вы используете? Мне кажется, что вы используете старую версию Cargo. –

ответ

0

Это правильный Cargo.toml:

[package] 
name = "binary_tree" 
version = "0.0.1" 
authors = ["Guillaume Bersac <[email protected]>"] 

[[lib]] 
name="binary_tree" 
test = true 
plugin = false 

Похоже, я бегу старую версию груза. Это странно, потому что я установил его вчера после official guide и с помощью этой команды:

$ curl -s https://static.rust-lang.org/rustup.sh | sudo sh 

Моей rustc версии: rustc 0.13.0-ночной (40b244973 2014-10-14 23:22:20 +0000)

Моя грузовая версия: груз 0.0.1-преднормий (9788700 2014-10-15 20:14:53 +0000)

+0

Я не знаю, почему вы не приняли моего ответа. Мой ответ включал в себя предположение, что вы использовали старый «груз» и что вам, вероятно, нужно было использовать '[[lib]]'. В самом деле, это именно то, что у вас здесь. – BurntSushi5

+0

Ваш ответ правильный, я определил свой ответ как правильный ответ, потому что мой ответ более точен, чем ваш (пример решения). Лучше для любого пользователя, который заходит на эту страницу, чтобы увидеть наиболее подробный ответ. Извините за 15 очков репутации, которые вы проиграли из-за этого изменения. – Moebius

+2

В будущем, было бы вежливо с вами оставить комментарий с просьбой распространиться с полным примером. – BurntSushi5

3

Вы используете последние rustc и cargo? Если нет, я думаю, вам понадобился [[lib]], который создает массив таблиц в TOML.

+3

Cargo больше не использует '[[lib]]', не на пару месяцев. '[lib]' правильный. –