Any advice on feature unification when using bootloader in workspace
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 25/100
- Tipo de issue
- Error
- Claridad
- Necesita aclaración
- Estado de actividad
- Estancado
- Stack tecnológico
- rust
Línea de trabajo
Comienza con la configuración del workspace y de las build-dependencies que se muestra en el issue; después, inspecciona kernel/src/main.rs y reproduce el error duplicate panic_impl con bootloader 0.11.4 y la dependencia vga. Determina si la configuración del workspace admite esta combinación; documenta la configuración necesaria o deja constancia clara de la limitación y del resultado esperado.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
I've been following the guide on setting up the workspace such that the kernel is in a separate crate and is brought in as an artifact dependency:
[build-dependencies]
bootloader = "0.11.4"
kernel = { path = "kernel", artifact = "bin" }
[workspace]
resolver = "2"
members = ["kernel"]
The problem I'm having is that when I use the vga crate, which uses bitflags, it contains the std feature as bootloader also uses this crate in std env.
Leading to this error:
Compiling kernel v0.0.0 (REDACTED)
error[E0152]: found duplicate lang item `panic_impl`
--> kernel/src/main.rs:31:1
|
31 | / pub fn panic(_info: &PanicInfo) -> ! {
32 | | loop {}
33 | | }
| |_^
|
= note: the lang item is first defined in crate `std` (which `bitflags` depends on)
= note: first definition in `std` loaded from /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-d65a5ac20318153f.so, /home/aaron/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-d65a5ac20318153f.rlib
= note: second definition in the local crate (`kernel`)
Is there any way to get around this? I was hoping artifact dependencies would be completely seperate but that doesn't seem to be the case. Am I doing something wrong in my setup?
I've tried explicit using bitflags with default-features=false and using the v2 resolver to no avail
- Lenguaje dominante
- Rust
- Estrellas
- 1.7k
- Forks
- 240
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de rust-osdev/bootloader
-
help wanted
Dificultad 3/5 1-2 días Aptitud para principiantes 67/100
rust-osdev/bootloader#581 · 2 comentarios ·
-
No boot on real hardware Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
rust-osdev/bootloader#573 · 5 comentarios ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 20/100
rust-osdev/bootloader#555 · 2 comentarios ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 30/100
rust-osdev/bootloader#534 ·
-
Dificultad 3/5 1-2 días Aptitud para principiantes 38/100
rust-osdev/bootloader#525 ·
Todos los issues de rust-osdev/bootloader
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
BurntSushi/jiff#653 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
ZcashFoundation/zeeder#106 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
oxidize-rb/rb-sys#807 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
-
todo:ticket
Dificultad 2/5 1-2 días Aptitud para principiantes 74/100