Skip to content
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

Fix Travis: treat eigenpy as a system dependency #1737

Merged
merged 1 commit into from
Nov 17, 2019

Conversation

rhaschke
Copy link
Contributor

Alternative to #1734.

@rhaschke rhaschke merged commit bc9c4ce into moveit:master Nov 17, 2019
@rhaschke rhaschke deleted the fix-travis branch November 17, 2019 15:01
rhaschke added a commit to ubi-agni/moveit that referenced this pull request Nov 18, 2019
@gavanderhoorn gavanderhoorn mentioned this pull request Nov 20, 2019
6 tasks
nim65s added a commit to nim65s/moveit that referenced this pull request May 28, 2020
fix stack-of-tasks/eigenpy#195

Since moveit#1737, eigenpy is found
using find_package, so we can get all required informations to find
headers and link to shared objects with a target_link_libraries to the
eigenpy::eigenpy imported CMake target.
@nim65s nim65s mentioned this pull request May 28, 2020
6 tasks
@lepalom
Copy link

lepalom commented May 28, 2020

I'm sorry but I don't understand this push and all the eigenpy in moveit. I'm trying to build moveit in debian buster and it fails because it doesn't find eigenpy:

find_package(eigenpy REQUIRED)

AFAIK this CMake line implies that or exists a "Findeigenpy.cmake" or eigenpy has installed eigenpyConfig.cmake or eigenpy-config.cmake files.

Checking eigenpy files and my installation eigenpy doesn't install that files. So, how do you solve it?

@rhaschke
Copy link
Contributor Author

rhaschke commented May 29, 2020

@lepalom, please indicate next time that you are using Noetic. Did you install the ROS eigenpy package: ros-noetic-eigenpy? This one adds the cmake config files.

@lepalom
Copy link

lepalom commented May 29, 2020

Nops! I'm not using Noetic. I have a list of packages (melodic version) that I want to use in my debian buster, so I prepare to build them.

However, I have detected that I carried some old version 1.3.2 of eigenpy so the errors come from there. Updating it, I found eigenpy 2.3.1-1 for melodic that install the cmake files.

Sorry for the noise. But building from source a complete ros distro is not an easy task.

@gavanderhoorn
Copy link
Contributor

But building from source a complete ros distro is not an easy task.

That's why we typically try to avoid it ;)

@lepalom
Copy link

lepalom commented May 29, 2020

Better if I don't explain to do it also with Python 3 only :-(

@v4hn
Copy link
Contributor

v4hn commented May 29, 2020 via email

@lepalom
Copy link

lepalom commented May 29, 2020

it works quite well with the occational patch.

changing all the shebangs?

Hang in there, it's quite straightforward once you figured out a few things. :)

Please, could you give me that few things ... I'm using a Debian system

v4hn pushed a commit that referenced this pull request May 29, 2020
fix stack-of-tasks/eigenpy#195

Since #1737, eigenpy is found
using find_package, so we can get all required informations to find
headers and link to shared objects with a target_link_libraries to the
eigenpy::eigenpy imported CMake target.
@v4hn
Copy link
Contributor

v4hn commented May 29, 2020

I don't know about debian, but my /usr/bin/python points to 3.8.2.
There shouldn't be the need to change any shebang (unless you find one hardcoded to python2) if you build the core system (including the catkin packages) with export ROS_PYTHON_VERSION=3

@lepalom
Copy link

lepalom commented May 29, 2020

Well, that was one solution. But I was surfing a bit on the web and looking [https://www.python.org/dev/peps/pep-0394/] I understood that that was not a good idea.

In any case, my main problems come from old packages that had problems with print " and except with ,

Another thing is strange behaviours.

We have in debian the core system in python3 and not python2.

@v4hn
Copy link
Contributor

v4hn commented May 29, 2020 via email

@lepalom
Copy link

lepalom commented May 29, 2020

and looking [https://www.python.org/dev/peps/pep-0394/] I understood that that was not a good idea.
I don't follow.

From my point of view, your script should run in any distro. As we (developers) are moving to python3 it's important that in the shebang appears which version are you using. IMHO it's not a good idea to have /usr/bin/python. It's better to have /usr/bin/python2 or /usr/bin/python3 to have clear which version are you using.

Another thing is because backward compatibility, etc. But, as ROS developers, iMHO we should be distro agnostic and ROS is too much Ubuntu centric.

Please file pull-request for as many of these issues as possible because for noetic we need them.

And yes, it's not moveit. There are other packages with old code.

@lepalom
Copy link

lepalom commented May 29, 2020

@v4hn
Copy link
Contributor

v4hn commented May 29, 2020

At least for scripts catkin_install_python takes care of adding the correct version in the shebang line.

Aside from that I do very much hope that there is no need for an API-incompatible python4 ever and python2 dies in the near future. So I do not see a reason to mark python3 by hand of a programmer.

ROS is too much Ubuntu centric.

Tell me about it, I've been fighting that fight for 6 years now and believe me, it's a stroll through the park these days to get things to compile on non-ubuntu...

davetcoleman pushed a commit to davetcoleman/moveit that referenced this pull request Jun 2, 2020
fix stack-of-tasks/eigenpy#195

Since moveit#1737, eigenpy is found
using find_package, so we can get all required informations to find
headers and link to shared objects with a target_link_libraries to the
eigenpy::eigenpy imported CMake target.
davetcoleman pushed a commit to davetcoleman/moveit that referenced this pull request Jun 2, 2020
fix stack-of-tasks/eigenpy#195

Since moveit#1737, eigenpy is found
using find_package, so we can get all required informations to find
headers and link to shared objects with a target_link_libraries to the
eigenpy::eigenpy imported CMake target.
pradeepr-roboticist pushed a commit to pradeepr-roboticist/moveit that referenced this pull request Jun 3, 2020
fix stack-of-tasks/eigenpy#195

Since moveit#1737, eigenpy is found
using find_package, so we can get all required informations to find
headers and link to shared objects with a target_link_libraries to the
eigenpy::eigenpy imported CMake target.
v4hn pushed a commit to v4hn/moveit that referenced this pull request Jul 3, 2020
fix stack-of-tasks/eigenpy#195

Since moveit#1737, eigenpy is found
using find_package, so we can get all required informations to find
headers and link to shared objects with a target_link_libraries to the
eigenpy::eigenpy imported CMake target.

(cherry picked from commit 81e64b9)
v4hn pushed a commit to v4hn/moveit that referenced this pull request Jul 3, 2020
fix stack-of-tasks/eigenpy#195

Since moveit#1737, eigenpy is found
using find_package, so we can get all required informations to find
headers and link to shared objects with a target_link_libraries to the
eigenpy::eigenpy imported CMake target.
rhaschke pushed a commit that referenced this pull request Jul 3, 2020
fix stack-of-tasks/eigenpy#195

Since #1737, eigenpy is found
using find_package, so we can get all required informations to find
headers and link to shared objects with a target_link_libraries to the
eigenpy::eigenpy imported CMake target.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants