rust 1.70以后版本编译cdylib 报 undefined version错误
💡
原文中文,约4400字,阅读约需11分钟。
📝
内容提要
该项目在编译cdylib库时使用了vendor,1.69版本的rust下编译正常,但在1.70版本下编译报错,尝试修改依赖的libc与proc-macro2的版本仍有编译报错。
🎯
关键要点
- 项目使用vendor,在src目录中编译cdylib库。
- 在Rust 1.69版本下编译正常,无报错。
- 在Rust 1.70版本下编译报错,显示多个未定义版本的错误。
- 修改src/Cargo.toml将cdylib改为rlib或staticlib可以正常编译。
- 尝试修改libc与proc-macro2的版本仍然出现编译错误。
- rustc 1.72.0和rustc 1.74.0-nightly版本也出现相同的报错。
- 列出了项目的依赖关系,包括c2rust-bitfields、libc、fluent-bundle等。
➡️