https://bugs.kde.org/show_bug.cgi?id=362736
Bug ID: 362736 Summary: Compile vs. runtime symbols discrepancy Product: frameworks-networkmanager-qt Version: unspecified Platform: Other OS: Linux Status: UNCONFIRMED Severity: normal Priority: NOR Component: general Assignee: jgrul...@redhat.com Reporter: palo.k...@gmail.com CC: lamar...@kde.org, lukas.ti...@merlin.cz Currently I'm facing a downstream/packaing problem with the networkmanager-qt. Please, take a look on this scenario. Consider the NetworkManager-qt code: #if NM_CHECK_VERSION(1, 2, 0) /** * @return If TRUE, indicates the NetworkManager plugin for the device is likely * missing or misconfigured. * @since 5.14.0 */ bool nmPluginMissing() const; #endif If the binary/library package was compiled against networkmanager < 1.2.0, then the nmPluginMissing() symbol is not present in the library. Fair enough... so we can add the very same conditional into our code: #if NM_CHECK_VERSION(1, 2, 0) connect(device.data(), &NetworkManager::Device::nmPluginMissingChanged, this, &NmModelPrivate::onDeviceUpdated); #endif But if we are compiling our code on a system with networkmanager >= 1.2.0 (e.g. the up-to-date arch, debian unstable...), we are getting the linker error about missing nmPluginMissing() symbol. One of the solution is to give the networkmanager-qt a *stong* dependency on the networkmanager (version = build time version). But I thing it's also worth to report this here as the networkmanager-qt should state/define presence of symbols on its own and not based on current (compile time) presence of networkmanager. Thanks. -- You are receiving this mail because: You are watching all bug changes.