Open
Description
Recently the mpi
crate has stopped building because it transitively depends on different versions of the clang-sys
crate which links to the native libclang
. Here is the error message:
error: multiple packages link to native library `clang`, but a native library can be linked only once
package `clang-sys v0.22.0`
... which is depended on by `bindgen v0.33.2`
... which is depended on by `mpi-sys v0.1.1 (file:///Users/bsteinb/Documents/Programming/rust/rsmpi/mpi-sys)`
... which is depended on by `mpi v0.5.2 (file:///Users/bsteinb/Documents/Programming/rust/rsmpi)`
links to native library `clang`
package `clang-sys v0.21.2`
... which is depended on by `bindgen v0.31.3`
... which is depended on by `libffi-sys v0.6.0`
... which is depended on by `libffi v0.6.3`
... which is depended on by `mpi v0.5.2 (file:///Users/bsteinb/Documents/Programming/rust/rsmpi)`
also links to native library `clang`
I understand that this would be a problem if both versions of the clang-sys
crate were to end up being linked to by the mpi
crate, but they do not. bindgen
(and transitively clang-sys
) in both cases is a build dependency of mpi-sys
and libffi-sys
and is only linked to their respective build
scripts and does not end up in the mpi
crate. Should this really be an error, or is cargo
being too cautious here?