Here is the problem. I did source devel/setup.bash and it sets $ROS_PACKAGE_PATH to the root of build directory. Now when I do rosrun using_markers points_and_lines I have the error of rospack complaining it cannot find these packages. [..] This is only a partial answer, but the reason is most likely the fact that rospack will only consider directories 'packages' if there is a package.xml in them. In your tree output, I don't see a manifest anywhere. I'm not sure why this is. You could try and see whether a make install from your build directory results in something different. Perhaps @Dirk Thomas can chime in? Here is the problem. I did source devel/setup.bash and it sets $ROS_PACKAGE_PATH to the root of build directory. Now when I do rosrun using_markers points_and_lines I have the error of rospack complaining it cannot find these packages. [..]
This is only a partial answer, but the reason is most likely the fact that rospack will only consider directories 'packages' if there is a package.xml in them. In your tree output, I don't see a manifest anywhere.
I'm not sure why this is. You could try and see whether a make install from your build directory results in something different.different (make sure to set DESTDIR to something valid).
Edit: just checked again and make install does result in the package manifests being copied over to the installation directory. After sourceing the setup.bash there, rospack find \$pkg does resolve to the location in the installation directory, as expected.