locusrobotics/catkin_virtualenv

catkin_make fails on `venv_lock`

Closed this issue · 1 comments

I git cloned the master branch to my catkin workspaces src. Attempting to run catkin_make results in the following error.

OS: Ubuntu 20.04
ROS Version: Noetic

CMake Error at catkin_virtualenv/catkin_virtualenv/cmake/catkin_generate_virtualenv.cmake:144 (add_custom_target):
  add_custom_target cannot create target "venv_lock" because another target
  with the same name already exists.  The existing target is a custom target
  created in source directory
  "/home/toor/workspace/ros/src/catkin_virtualenv/test_catkin_virtualenv".
  See documentation for policy CMP0002 for more details.
Call Stack (most recent call first):
  catkin_virtualenv/test_catkin_virtualenv_inherited/CMakeLists.txt:8 (catkin_generate_virtualenv)


-- +++ processing catkin package: 'test_catkin_virtualenv_py3_isolated'
-- ==> add_subdirectory(catkin_virtualenv/test_catkin_virtualenv_isolated)
CMake Error at catkin_virtualenv/catkin_virtualenv/cmake/catkin_generate_virtualenv.cmake:144 (add_custom_target):
  add_custom_target cannot create target "venv_lock" because another target
  with the same name already exists.  The existing target is a custom target
  created in source directory
  "/home/toor/workspace/ros/src/catkin_virtualenv/test_catkin_virtualenv".
  See documentation for policy CMP0002 for more details.
Call Stack (most recent call first):
  catkin_virtualenv/test_catkin_virtualenv_isolated/CMakeLists.txt:8 (catkin_generate_virtualenv)


-- +++ processing catkin package: 'ldlidar'
-- ==> add_subdirectory(ldlidar)
-- Configuring incomplete, errors occurred!
See also "/home/toor/workspace/ros/dev_build/CMakeFiles/CMakeOutput.log".
See also "/home/toor/workspace/ros/dev_build/CMakeFiles/CMakeError.log".
Invoking "cmake" failed

@androiddrew What was the resolution here, if any?

I'm encountering the same issue (Melodic, 18.04). I don't see any PRs or commits that specifically address this.

I encounter the issue when doing a non-isolated build such as with catkin_make, and use catkin_virtualenv in more than one package in my project.
The cause seems pretty clear, this line gets called in more than one of my packages withing the project, both defining a target with the same name and thus it errors out.