-
Notifications
You must be signed in to change notification settings - Fork 14
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
Unable to include headers found in devel/include, generated by grpc #31
Comments
I was not able to reproduce the problem (using some of my Also, if you can provide a minimal example to reproduce this issue (preferable a GitHub repository), I am happy to take a look into. (I removed my previous comments because I missed some details in your issues -- sorry) |
Also, some other mistakes in your parrot_common_wrapper:
parrot_comm:
|
I fixed the mistakes you mentioned and also confrmed that I've attached a minimum example. Just extract this into a freshly made catkin workspace. I tried to recreate the same folder structure I am using now, in case it is relevant. The "protobuf_package" contains the protobufs and is equivalent to the "parrot_common_wrapper" package I'm using, and the "linked_package" is trying to use the header built from the protobuf_package, i.e. equivalent to "parrot_comm" in my case. I am facing the exact same issue with this example. |
Strangely, these packages built without any issue on my computer. Can you also report your catkin version? Did you use |
That is very strange. I have used catkin_make. No isolated mode or anything. I do not have catkin-tools installed, so I haven't tried using catkin build. As this seems to be an issue related to my environment, I also put this question in ROS Answers. It can be found here. https://answers.ros.org/question/294331/unable-to-include-headers-found-in-develinclude-generated-by-grpc/ . But I would appreciates any insights in the meantime. I'm running ROS Kinetic under Ubuntu MATE, with ros-kinetic-catkin 0.7.11-0xenial-20180222-175501-0800 amd64 installed |
Another note: I have tried the test case on a completely different machine (a raspberry pi running a fresh install of Ubuntu MATE 16.04 and Kinetic), and I'm facing the same problem. |
Thanks for the information. I was using |
I can confirm the bug with |
Temporary workaround:
|
Workaround works for me. Thanks! Will use this for now. As for catkin-tools, I'm actually unfamiliar with using them so it'll take me a while to try... |
It seems ROS's message generation adds the include directory in their CMakeList rules. Maybe we should also do that in the |
I have a project (let's call it parrot_common_wrapper) that uses grpc to generate headers from protobuf. protobufs are found in parrot_common_wrapper/parrot-common/tctm/, and an example of a protobuf is Echo.pb. These headers are then installed into devel/include in the root directory, no further subdirectories. I can see this myself.
I have another project (let's call it parrot_comm) in which I would like to include these generated headers, but for the life of me I couldn't get it to work. It simply could not find the requested header file. I have tried the following to include it:
But none of these work, all giving me the same error: that the file is not found
Here is my CMakeLists for parrot_comm:
And here is the CMakeLists for the parrot_common_wrapper project
What am I missing? I'm sorry if this is a very trivial problem, I've been dragging my hair out for a whole day trying to fix this.
The text was updated successfully, but these errors were encountered: