-
Notifications
You must be signed in to change notification settings - Fork 10.6k
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
ConanFile for C++ deployments #15363
Comments
We've been thinking of adding support for Conan in the past (as our C++ installation story is not ideal) but never actually go to it - help would be really welcome here.
|
@jtattermusch I am currently trying to create a conanfile for grpc (so far only for internal use) , I found most dependencies are available:
For a full build with all dependencies coming in as provider=package only google benchmark is missing. So I managed to get this working on windows and only the linux build is giving me trouble when creating a debug build. In this case libprotobuf.a is not found because it is created as libprotobufd.a EDIT: configuring grpc build to find protobuf in CONFIG mode does the trick for debug builds. In case you are interested here are my conan files for windows/linux (untested on osx) For benchmark:
For grpc:
Note that I am publishing the benchmark package to a local artifactory so you need to substitute your own for 'MY_LOCAL_REGISTRY' |
This is exactly what I was hoping for! Thankyou @Ozaq ! |
We have our own gRPC Conan package for a while now, but upstream support would be obviously the best https://github.com/inexorgame/conan-grpc/ |
For the purpose of creating a good gRPC Conan recipe I have also opened #15949. |
@Croydon thanks for sharing the conan recipe. |
TodoHard blockers:
Nice to have:
I will keep this list up-to-date till this is done. |
Is there a reason we don't use the Conan tools collect_libs function:
instead of manually hard-coding the list of libraries? When I use that against v1.15.1 it finds:
which looks equivalent and seems far less brittle |
|
I'm also very interested in a Conan package for GRPC, need this for my current project. |
@EkremH looks like you should be able to use the community-provided conan package here: I haven't tried the package myself but it seems like others have been using it. |
Bintray logs downloads, but this is in no way representative for real interest in a grpc Conan recipe, since
With that being said, statistics are directly visible on the package: https://bintray.com/inexorgame/inexor-conan/grpc%3Ainexorgame#statistics
I'm definitely interested in doing this. However, only after Protobuf/protoc_installer landed in conan-center (see todo list), before that we would fight at to many places at the same time I guess. With that being said I still hope for some early tester and contributors.
I have updated the todo list above accordingly. Thanks! 😄 |
At the request of Croydon (from the issue #17438), the recipe we are using in my company is the following one:
I think it was inspired from the one of bincrafter. |
@Siron777 Thanks for sharing!
@bincrafters don't have a grpc recipe. I'm part of Bincrafters, but we will go with the strategy that we want to bring it to a mature state at the Inexor repository and then we would like to see official support upstream 😄 Please consider contributing to the recipe |
This issue/PR has been automatically marked as stale because it has not had any update (including commits, comments, labels, milestones, etc) for 180 days. It will be closed automatically if no further update occurs in 1 day. Thank you for your contributions! |
Still work in progress. I'm still maintaining the (unstable) grpc recipe and will eventually push it in the Conan Center Index |
Hi everyone, is there any date foreseen when a stable grpc package could be available in conan-center ? |
The progress of getting packages into Conan Center has changed in the meantime There is now the Conan Center Index. Future work on grpc is stalled until Protobuf and Protoc are added to the Conan Center Index. Until grpc is ready for the Conan Center index, the recipe is getting maintained at https://github.com/inexorgame/conan-grpc/ @Firefly35 but no there is no date yet |
Thanks, I didn't know conan linking changed in conan-center.
Le mer. 11 déc. 2019 à 15:42, Croydon <notifications@github.com> a écrit :
… The progress of getting packages into Conan Center has changed in the
meantime
There is now the Conan Center Index
<https://github.com/conan-io/conan-center-index>.
Even packages who are in Conan Center via the old linking should be
re-added and there are new criteria packages need to fulfill.
Future work on grpc is stalled until Protobuf and Protoc are added to the
Conan Center Index.
Until grpc is ready for the Conan Center index, the recipe is getting
maintained at https://github.com/inexorgame/conan-grpc/
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#15363?email_source=notifications&email_token=AC5Z2FE67GYPRNQSKQZ3Z7TQYD34RA5CNFSM4E7Y6D72YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEGTL3KQ#issuecomment-564575658>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AC5Z2FG3WOFZMALED5VCCLLQYD34RANCNFSM4E7Y6D7Q>
.
|
@Croydon I just tried out your gRPC Conan recipe with mixed success. It successfully built but I got the following error when the test ran: grpc/1.25.0@inexorgame/stable (test package): Running test()
14: failed to connect to all addresses
Greeter received: RPC failed |
@KyleFromKitware While I agree that this result is super confusing and should be improved, this is actually the expected result for now. Conan test_packages don't need to test the functionality of the library, only if the library was build successfully. The current test_package covers this by running grpc |
May I ask how can a test failure be expected result? Is the current "test" basically a placeholder for some actual tests? If so, can we just use a placeholder test that passes (it should be easy to come up with a simple program that uses grpc but actually passes). |
Upon further digging, it looks like their test is running a client without running the corresponding server. So the test builds successfully, and tries to connect to The fix would be to either run the server locally, or silence the error, either in the client program or at the Conan level by simply not running the executable. |
@jtattermusch @Croydon I've opened inexorgame-obsolete/conan-grpc#24 to run the server along with the client. The package test now successfully completes on my machine. |
This issue/PR has been automatically marked as stale because it has not had any update (including commits, comments, labels, milestones, etc) for 30 days. It will be closed automatically if no further update occurs in 7 day. Thank you for your contributions! |
We acknowledge this to be a valid feature request but since no one has come forward to implement this, we are going to close it for now while maintaining the label/Help wanted to indicate that this can be picked up as future work |
I'm still on it as previously mentioned (I did not joke about it 😉) It is just really, really hard and still a work-in-progress, but we close to land protoc in the Conan Center Index and Conan has landed new features that we need to continue working on an usable abseil and grpc recipe. Closing this issue might still be okay as a Conan recipe will go now to the Conan Center Index. For people who might want to get notificated on availability can track conan-io/wishlist#55 In the meantime, there is always the current state available at https://github.com/inexorgame/conan-grpc. The last more-or-less stable version is 1.25.0 currently. Somethings are broken, but it might still be useful to some people. |
Hi. I hope it will be helpful https://github.com/blockspacer/conan_grpc/blob/master/conanfile.py
|
I still don't see this recipe in https://github.com/conan-io/conan-center-index -- in the end did it ever make it? I see conan-io/wishlist#55 (comment) is still open. |
Apparently not. Would also love to see this in ConanCenter, ideally kept up to date by the maintainers. Until then https://github.com/inexorgame/conan-grpc looks to be a great alternative. |
What version of gRPC and what language are you using?
C++
What operating system (Linux, Windows, …) and version?
All
What runtime / compiler are you using (e.g. python version or version of gcc)
All
Hi Guys,
What is the support for creating a conanfile.py for the grpc project? Would it be something that would be considered for inclusion into the repo? Conan is a C++ package manager and I would like to test the waters for an official grpc conanfile.
Thanks,
Matt
The text was updated successfully, but these errors were encountered: