сделал себе всего embassy и примеры там запускаю. Всё хорошо. Но вот решил в cargo.toml зависимости не как в примере на локальный диск (типа embassy-sync = { version = "0.6.0", path = "../embassy/embassy-sync", features = ["defmt"] }), а совсем убрал локальный путь в надежде, что крейт скачается сам. Т.е. написал embassy-sync = { version = "0.6.0", features = ["defmt"] }. И так сделал для всех крейтов, которые локально брались. Сначала примеры компилировались, но потом выяснилось, что исходники крейтов совсем других версий подтянулись. Я начал настраивать RCC и там вообще другой код и структуры данных для bluepill. Пробовал cargo clean , но не помогло. Вернул ссылки на локальный диск, сразу все хорошо стало. В чем мб проблема?
в том что эмбедщики растовые не умеют релизить крейты на crates.io вероятно
Вчера читал зарубежные форумы по embassy - везде рекомендуют использовать локальные пути. Сам тоже не стал переделывать, стянул все с гита
embassy-stm32 крейт вообще давно не релизили. Тебе надо секцию patch добавить. Доберусь до офиса – покажу, как у меня в Cargo.toml это оформлено
В общем, примерно такую секцию добавляешь в конец Cargo.toml, меняешь только хэш коммита время от времени, если хочется bleeding edge [patch.crates-io] # make sure to get the latest git rev from GitHub, you can see the latest one here: # https://github.com/embassy-rs/embassy/commits/main/ # embassy-executor = { git = "https://github.com/embassy-rs/embassy", rev = "8dde7b625eed78271fec8f69ffa370e55c9dda9e" } embassy-sync = { git = "https://github.com/embassy-rs/embassy", rev = "8dde7b625eed78271fec8f69ffa370e55c9dda9e" } embassy-time = { git = "https://github.com/embassy-rs/embassy", rev = "8dde7b625eed78271fec8f69ffa370e55c9dda9e" } embassy-time-driver = { git = "https://github.com/embassy-rs/embassy", rev = "8dde7b625eed78271fec8f69ffa370e55c9dda9e" } embassy-time-queue-driver = { git = "https://github.com/embassy-rs/embassy", rev = "8dde7b625eed78271fec8f69ffa370e55c9dda9e" } embassy-stm32 = { git = "https://github.com/embassy-rs/embassy", rev = "8dde7b625eed78271fec8f69ffa370e55c9dda9e" }
Если хочется проблем)))
Обсуждают сегодня