When packages are installed to a non-standard library dir, ament_target_dependencies should add that directory to the link search path using target_link_directories().
The change seems moderately straightforward if PUBLIC is given, but target_link_directories() requires a type to be specified. PRIVATE seems like a reasonable default, but I'm not sure if that's the right thing to do.
An example package which sets this value is Boost: https://github.com/Kitware/CMake/blob/efa30023b4056a4c17e80d7a86bc2506660c68a7/Modules/FindBoost.cmake#L28