Is it possible to use apt-get install command to install ros package with specific version?
yes, but only the current version.
That is not what you were looking for, of course.
for example, I would like to try move_base 1.14.2. But the current version in ubuntu repo is 1.14.4 (for kinetic)
So the question really seems to be: can I install an older version of a ROS package by using apt
?
Then the answer is: no, as the ROS package repositories don't retain those whenever an update is synced from the staging server.
We've had a similar question some time ago, and there it turned out that the real problem was actually an incompatibility with a particular driver that had to be resolved. Installing an older version of a specific package there was merely a work-around.
To avoid an xy-problem, could you please explain why you want to install an older version of move_base
?
Edit:
I encountered a move_base bug and I figured out it is fixed in 1.14.4. So, I did a "apt-get install ros-kinetic-move-base" to installed 1.14.4. Then I found the move_base crashed when it started. So, I would like to try downgrade move_base to 1.14.2.
If you realy only upgraded move_base
then it would be very likely that the real issue you are running into is an ABI incompatibility between the upgraded move_base
and your other packages that are still using previous versions of files.
So assuming that is the actual problem (mixing updated packages with old versions), the solution would be to upgrade all (ROS) packages, not downgrade one.
https://github.com/ros-planning/navig... . This is the bug I encountered.
That ticket is from June (almost 5 months ago). Many upgrades have been released since then.
Question: How to upgrade installed ros packages? "apt-get upgrade" or "apt-get dist-upgrade" seems upgrade not only installed ros packages, but also other non-ros packages.
In most cases making sure you have an up-to-date system would be preferable over updating only a limited set of packages.
If you really want to upgrade only installed ROS packages, then the following command would do that:
sudo apt-get update && sudo apt-get install --only-upgrade ros-kinetic*
But again: in general I would try to maintain a consistent up-to-date system.
To the best of my knowledge only the most recent release is available via apt-get if you want any other version you will have to build it from source yourself.