diff --git a/benchmarks/rich/CMakeLists.txt b/benchmarks/rich/CMakeLists.txt
index 9afbcef280e6c37a6097880ac6fde901f0f894cf..14aa9ad2e7711b04b30531bba966168700a5fb32 100644
--- a/benchmarks/rich/CMakeLists.txt
+++ b/benchmarks/rich/CMakeLists.txt
@@ -18,8 +18,8 @@ set(algo_exe benchmark_${det_name}_reconstruction)
 add_executable(${algo_exe} ${algo_exe_source})
 
 # linking
-target_link_libraries(${algo_exe}
-  ${algo_lib}
+target_link_libraries(${algo_lib}
+  PUBLIC
   ROOT::Core
   ROOT::Hist
   podio::podio
@@ -28,6 +28,10 @@ target_link_libraries(${algo_exe}
   EDM4HEP::edm4hep
   spdlog::spdlog
   )
+target_link_libraries(${algo_exe}
+  PRIVATE
+  ${algo_lib}
+  )
 
 # installation
 install(FILES ${algo_headers} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${CMAKE_PROJECT_NAME}/${det_name})