goblin
goblin copied to clipboard
Build failure when specifying elf32 feature without elf64
Disable default-features and specify only elf32:
[dependencies]
goblin = { version = "0.2", default-features = false, features = ["std", "elf32"] }
Build fails:
Compiling goblin v0.2.0
error[E0432]: unresolved import `crate::elf64`
--> /Users/parasyte/.cargo/registry/src/github.com-1ecc6299db9ec823/goblin-0.2.0/src/elf/header.rs:207:17
|
207 | use crate::elf64;
| ^^^^^^^^^^^^ no `elf64` in the root
error[E0433]: failed to resolve: maybe a missing crate `elf64`?
--> /Users/parasyte/.cargo/registry/src/github.com-1ecc6299db9ec823/goblin-0.2.0/src/elf/dynamic.rs:704:35
|
704 | elf_dyn_std_impl!(u64, crate::elf64::program_header::ProgramHeader);
| ^^^^^ maybe a missing crate `elf64`?
error: aborting due to 2 previous errors
Some errors have detailed explanations: E0432, E0433.
For more information about an error, try `rustc --explain E0432`.
error: could not compile `goblin`.
Looking at the code, specifying the opposite (elf64 without elf32) will also fail for similar reasons.
Hmm looks like a build regression. Probably something got messed up in refactor. We have a makefile that should invoke some of these matrix combinations.
Should be simple fix. I might have some time this weekend to look into it, or perhaps you could ? :)