diff --git a/core/CMakeLists.txt b/core/CMakeLists.txt
index 1b01d4167..999bd58c2 100644
--- a/core/CMakeLists.txt
+++ b/core/CMakeLists.txt
@@ -14,6 +14,7 @@ find_package(catkin REQUIRED COMPONENTS
roscpp
visualization_msgs
rviz_marker_tools
+ pybind11_catkin
py_binding_tools
)
diff --git a/core/package.xml b/core/package.xml
index 7e3d68b9c..1c302f67f 100644
--- a/core/package.xml
+++ b/core/package.xml
@@ -17,6 +17,7 @@
roscpp
roslint
+ pybind11_catkin
roscpp
fmt
diff --git a/core/python/CMakeLists.txt b/core/python/CMakeLists.txt
index 98d40fca7..f7e81eb8e 100644
--- a/core/python/CMakeLists.txt
+++ b/core/python/CMakeLists.txt
@@ -1,7 +1,3 @@
-# pybind11 must use the ROS python version
-set(PYBIND11_PYTHON_VERSION ${PYTHON_VERSION})
-find_package(pybind11 3.0 REQUIRED)
-
# C++ wrapper code
add_subdirectory(bindings)
diff --git a/core/python/bindings/CMakeLists.txt b/core/python/bindings/CMakeLists.txt
index eb962b751..abcec0ad0 100644
--- a/core/python/bindings/CMakeLists.txt
+++ b/core/python/bindings/CMakeLists.txt
@@ -11,7 +11,7 @@ target_link_libraries(${PROJECT_NAME}_python_tools PUBLIC pybind11::opt_size)
#catkin_lint: ignore undefined_target
# moveit.task_constructor
-pybind11_add_module(pymoveit_mtc
+pybind_add_module(pymoveit_mtc
src/solvers.cpp
src/core.cpp
src/stages.cpp