-
Notifications
You must be signed in to change notification settings - Fork 989
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[question] Empty buildenv for test_package #14549
Comments
I just noticed that this issue has been reported several times: We have the following work around in test_package in Conan1: # the following is workaround https://github.com/conan-io/conan/issues/7192
if self.settings.os == "Linux":
cmake.definitions["CMAKE_EXE_LINKER_FLAGS"] = "-Wl,--unresolved-symbols=ignore-in-shared-libs"
elif self.settings.os == "Macos":
cmake.definitions["CMAKE_EXE_LINKER_FLAGS"] = "-Wl,-undefined -Wl,dynamic_lookup" |
This shouldn't be an issue resolved by Have you tried the recommendation in #13302 of doing |
Yes, changing private linking to public works, at the price of breaking the semantics of private linking. |
This is mostly seen in executables targets or shared targets. In the first case the semantics of private linking are irrelevant. In the second case, it shouldn't be a big issue, because when Conan consumes that library downstream it will generate new |
Celix provides two kinds of artifacts: libraries and bundles. Conan can describe the former pretty well in a build-system neutral way. Celix provides its own
|
My Conan 2 port is finished: apache/celix#620 I encounter an issue when using CMakeUserPresets.json with CLion. |
Thanks to you for all the feedback and support! |
What is your question?
When I add test_package for Conan 2 to Celix, I found that generated
conanbuildenv.sh
is empty so that linker failed to find Celix's dependencies:/usr/bin/ld: warning: libzip.so.5, needed by /home/peng/.conan2/p/b/celix3a8b528c6212b/p/lib/libcelix_utils.so.2, not found (try using -rpath or -rpath-link) /usr/bin/ld: /home/peng/.conan2/p/b/celix3a8b528c6212b/p/lib/libcelix_utils.so.2: undefined reference to `zip_close'
On the other hand,
conanrunenv.sh
setupsLD_LIBRARY_PATH
correctly.And for Conan 1, I have not encountered such issue.
Here is my test_package:
https://github.com/apache/celix/tree/feature/483-conan-2-support/examples/conan_test_package_v2
Here is Celix's
package_info
(we rely on Config.cmake to describe complex custom cmake targets):https://github.com/apache/celix/blob/00336571046022d1d932db56befe0005cfeb45a4/conanfile.py#L448-L455
Have you read the CONTRIBUTING guide?
The text was updated successfully, but these errors were encountered: