]> git.proxmox.com Git - cargo.git/commitdiff
More information for links conflicting
authorhi-rustin <rustin.liu@gmail.com>
Thu, 10 Jun 2021 07:12:19 +0000 (15:12 +0800)
committerhi-rustin <rustin.liu@gmail.com>
Thu, 10 Jun 2021 07:12:19 +0000 (15:12 +0800)
src/cargo/core/resolver/errors.rs
tests/testsuite/build_script.rs

index 72832f635bbbe349b8e57505e820ac40b71459b1..3965a0f102b25c0b1c999b80daaf2059ce261802 100644 (file)
@@ -129,6 +129,10 @@ pub(super) fn activation_error(
                     msg.push_str(link);
                     msg.push_str("` as well:\n");
                     msg.push_str(&describe_path(&cx.parents.path_to_bottom(p)));
+                    msg.push_str("\nOnly one package in the dependency graph may specify the same links value. This helps ensure that only one copy of a native library is linked in the final binary. ");
+                    msg.push_str("Try to adjust your dependencies so that only one package uses the links ='");
+                    msg.push_str(&*dep.package_name());
+                    msg.push_str("' value. For more information, see https://doc.rust-lang.org/cargo/reference/resolver.html#links.");
                 }
                 ConflictReason::MissingFeatures(features) => {
                     msg.push_str("\n\nthe package `");
index 405dce965952dab595dc8a90d25eb319d21b24e8..44e9295f60dbc01ea4567f0e90c31f63a606d5b8 100644 (file)
@@ -772,6 +772,7 @@ versions that meet the requirements `*` are: 0.5.0
 
 the package `a-sys` links to the native library `a`, but it conflicts with a previous package which links to `a` as well:
 package `foo v0.5.0 ([..])`
+Only one package in the dependency graph may specify the same links value. This helps ensure that only one copy of a native library is linked in the final binary. Try to adjust your dependencies so that only one package uses the links ='a-sys' value. For more information, see https://doc.rust-lang.org/cargo/reference/resolver.html#links.
 
 failed to select a version for `a-sys` which could resolve this conflict
 ").run();
@@ -891,6 +892,7 @@ versions that meet the requirements `*` are: 0.5.0
 
 the package `a-sys` links to the native library `a`, but it conflicts with a previous package which links to `a` as well:
 package `foo v0.5.0 ([..])`
+Only one package in the dependency graph may specify the same links value. This helps ensure that only one copy of a native library is linked in the final binary. Try to adjust your dependencies so that only one package uses the links ='a-sys' value. For more information, see https://doc.rust-lang.org/cargo/reference/resolver.html#links.
 
 failed to select a version for `a-sys` which could resolve this conflict
 ").run();
@@ -4081,6 +4083,7 @@ versions that meet the requirements `*` are: 0.5.0
 
 the package `a` links to the native library `a`, but it conflicts with a previous package which links to `a` as well:
 package `foo v0.5.0 ([..])`
+Only one package in the dependency graph may specify the same links value. This helps ensure that only one copy of a native library is linked in the final binary. Try to adjust your dependencies so that only one package uses the links ='a' value. For more information, see https://doc.rust-lang.org/cargo/reference/resolver.html#links.
 
 failed to select a version for `a` which could resolve this conflict
 ").run();