目前一个项目,使用到了vendor
,并在src
目录中编译出cdylib
库。
1、在1.69
版本的rust
,进行编译。一切编译正常。无编译报错,cdylib
库正常输出。
2、在1.70
版本下,编译报错如下:(vendor
目录 更新与不更新都是同样的情况)
...
/usr/bin/ld: functin_name1: undefined version:
/usr/bin/ld: functin_name2: undefined version:
/usr/bin/ld: chacha_ivsetup: undefined version:
/usr/bin/ld: chacha_encrypt_bytes: undefined version:
/usr/bin/ld: _rs_stir: undefined version:
/usr/bin/ld: failed to set dynamic section sizes: bad value
collect2: error: ld returned 1 exit status
如果在1.70
版本下,通过修改src/Cargo.toml
,把cdylib
改成rlib
或者staticlib
都会正常编译,无报错。
尝试修改依赖的libc
与proc-macro2
的版本,依然有上述编译报错。
现在不知道怎么继续定位了,麻烦各位大佬支支招。
rustc 1.72.0 (5680fa18f 2023-08-23)
和 rustc 1.74.0-nightly (d9c8274fb 2023-09-12)
版本也有同样的报错。
依赖关系如下:
├── c2rust-bitfields v0.17.0
│ └── c2rust-bitfields-derive v0.17.0 (proc-macro)
│ ├── proc-macro2 v1.0.66 (*)
│ ├── quote v1.0.33 (*)
│ └── syn v1.0.109
│ ├── proc-macro2 v1.0.66 (*)
│ ├── quote v1.0.33 (*)
│ └── unicode-ident v1.0.11
├── libc v0.2.147
├── stdext v0.3.1
├── fluent-bundle v0.15.2
│ ├── fluent-langneg v0.13.0
│ │ └── unic-langid v0.9.1
│ │ └── unic-langid-impl v0.9.1
│ │ └── tinystr v0.7.1
│ │ └── displaydoc v0.2.4 (proc-macro)
│ │ ├── proc-macro2 v1.0.66
│ │ │ └── unicode-ident v1.0.11
│ │ ├── quote v1.0.33
│ │ │ └── proc-macro2 v1.0.66 (*)
│ │ └── syn v2.0.32
│ │ ├── proc-macro2 v1.0.66 (*)
│ │ ├── quote v1.0.33 (*)
│ │ └── unicode-ident v1.0.11
│ ├── fluent-syntax v0.11.0
│ │ └── thiserror v1.0.48
│ │ └── thiserror-impl v1.0.48 (proc-macro)
│ │ ├── proc-macro2 v1.0.66 (*)
│ │ ├── quote v1.0.33 (*)
│ │ └── syn v2.0.32 (*)
│ ├── intl-memoizer v0.5.1
│ │ ├── type-map v0.4.0
│ │ │ └── rustc-hash v1.1.0
│ │ └── unic-langid v0.9.1 (*)
│ ├── intl_pluralrules v7.0.2
│ │ └── unic-langid v0.9.1 (*)
│ ├── rustc-hash v1.1.0
│ ├── self_cell v0.10.2
│ ├── smallvec v1.11.0
│ └── unic-langid v0.9.1 (*)
├── fluent-resmgr v0.0.6
│ ├── elsa v1.9.0
│ │ └── stable_deref_trait v1.2.0
│ ├── fluent-bundle v0.15.2 (*)
│ ├── fluent-fallback v0.7.0
│ │ ├── async-trait v0.1.73 (proc-macro)
│ │ │ ├── proc-macro2 v1.0.66 (*)
│ │ │ ├── quote v1.0.33 (*)
│ │ │ └── syn v2.0.32 (*)
│ │ ├── chunky-vec v0.1.0
│ │ ├── fluent-bundle v0.15.2 (*)
│ │ ├── futures v0.3.28
│ │ │ ├── futures-channel v0.3.28
│ │ │ │ ├── futures-core v0.3.28
│ │ │ │ └── futures-sink v0.3.28
│ │ │ ├── futures-core v0.3.28
│ │ │ ├── futures-executor v0.3.28
│ │ │ │ ├── futures-core v0.3.28
│ │ │ │ ├── futures-task v0.3.28
│ │ │ │ └── futures-util v0.3.28
│ │ │ │ ├── futures-channel v0.3.28 (*)
│ │ │ │ ├── futures-core v0.3.28
│ │ │ │ ├── futures-io v0.3.28
│ │ │ │ ├── futures-macro v0.3.28 (proc-macro)
│ │ │ │ │ ├── proc-macro2 v1.0.66 (*)
│ │ │ │ │ ├── quote v1.0.33 (*)
│ │ │ │ │ └── syn v2.0.32 (*)
│ │ │ │ ├── futures-sink v0.3.28
│ │ │ │ ├── futures-task v0.3.28
│ │ │ │ ├── memchr v2.6.3
│ │ │ │ ├── pin-project-lite v0.2.13
│ │ │ │ ├── pin-utils v0.1.0
│ │ │ │ └── slab v0.4.9
│ │ │ │ [build-dependencies]
│ │ │ │ └── autocfg v1.1.0
│ │ │ ├── futures-io v0.3.28
│ │ │ ├── futures-sink v0.3.28
│ │ │ ├── futures-task v0.3.28
│ │ │ └── futures-util v0.3.28 (*)
│ │ ├── once_cell v1.18.0
│ │ ├── rustc-hash v1.1.0
│ │ └── unic-langid v0.9.1 (*)
│ ├── futures v0.3.28 (*)
│ ├── rustc-hash v1.1.0
│ └── unic-langid v0.9.1 (*)
├── libc v0.2.147
├── stdext v0.3.1
├── sys-locale v0.3.1
└── unic-langid v0.9.1 (*)
1
共 0 条评论, 1 页
评论区
写评论还没有评论