Using catkin without ROS
So I like the catkin build system and am interesting in using it outside ROS, and working with people that don't want to install ROS. Is this possible?
I've tried installing catkin with pip but am getting errors like unable to find catkinConfig.cmake. Before I start going down this rabbit hole and try copying just that file, has anyone tried this?
edit: I built from source and when I run catkin_make
after sourcing /usr/local/setup.sh
, I get this:
Base path: workspace
Source space: workspace/src
Build space: workspace/build
Devel space: workspace/devel
Install space: workspace/install
####
#### Running command: "cmake workspace/src -DCATKIN_DEVEL_PREFIX=workspace/devel -DCMAKE_INSTALL_PREFIX=workspace/ins\
tall" in "workspace/build"
####
CMake Error at CMakeLists.txt:59 (message):
find_package(catkin) failed. catkin was neither found in the workspace nor
in the CMAKE_PREFIX_PATH. One reason may be that no ROS setup.sh was
sourced before.
I've tried setting /usr/local/share/catkin/cmake/
as CMAKE_PREFIX_PATH
.
edit: ok, appears to have been a permissions issue and now catkin_make
is working, but the directories created appear to be incompatible with catkin build now, which fails on its own. Is that command deprecated? It is how I create eclipse projects.
How did you build it from source?
What do you mean with "catkin build"? rosbuild or catkin_tools?
in order to get catkin working I needed to pip install catkin_pkg, and I also installed catkin_tools, which has the catkin (not catkin_make) commands. I used this to make separate eclipse projects for each module, while catkin_make -G"Eclipse CDT4 - Unix Makefiles" puts them in one big project.
catkin_tools
has not officially been announced and is still in development. You might want to stick to the commands coming withcatkin
: namelycatkin_make
/catkin_make_isolated
.There is nothing wrong with
catkin_tools
, but you cannot mix usage ofcatkin build
andcatkin_make
in the same workspace. You must use one or the other.Fair enough, is there a way to make catkin_make build separate eclipse projects like catkin build does?
You might want to try
catkin_make_isolated
which invokes CMake for each package (the same way as catkin_tools).You can either use
catkin_make_isolated
or usecatkin_tools
but with different build, devel, and install folders.