-
Notifications
You must be signed in to change notification settings - Fork 132
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
P2Pool fails to link at the end of compiliation due to hidden symbol #313
Comments
It works fine with WITH_GRPC=OFF |
I see a lot of command line options that shouldn't be there if you follow the build instructions from README.MD. If you get an error while using the exact build instructions, I can look into it and fix the README. All I found about this error is https://stackoverflow.com/questions/23696585/what-does-exactly-the-warning-mean-about-hidden-symbol-being-referenced-by-dso |
Yeah i saw the same on stackoverflow Most of those build options pretty much are equivalent to -march=native for alderlake, for some reason GCC doesn't like the heterogeneous architecture and cache size (and thus wont allow me to use -march=native alone), sorry for the confusion. I think it has something to do with me already having protobuf on my system as a dynamic library of another version. I'll look into this a bit further |
@adapt-L Did you find anything? |
the issue was entirely on my end. Sorry for the inconvenience. My distro's policy suggests that I should modify the cmake/flags.cmake file to prevent p2pool from setting its own optimization/security CFLAGS or CXXFLAGS, and there was a problem with me manually copying code from the old flags.cmake to the new flags.cmake (which had the effect of setting the c++ standard to c++14, so it was failing to interpret your new atomics code with the old atomics code) |
-DWITH_GRPC=ON still causes me an error in the final linking process though. Something to do with the (static?) debug symbols of protobuf as a dependency of grpc.
|
this page https://stackoverflow.com/questions/23696585/what-does-exactly-the-warning-mean-about-hidden-symbol-being-referenced-by-dso#23708713 suggest that the intermediate library (see the second answer) should be dynamicially linked. I'm curious how you got this to compile? |
gRPC and protobuf are both linked statically, there shouldn't be any dynamically linked symbols there. As for how I build gRPC, you can check cmake/grpc.cmake and external/src/grpc/CMakeLists.txt (I added a section that sets CMAKE_C_FLAGS/CMAKE_CXX_FLAGS there). |
P2Pool is failing to link for me now, Here is the output from CMAKE:
The text was updated successfully, but these errors were encountered: