Is it standard practice to put the full path to a *.so in a "-l" flag? For example in groovy: $ pkg-config --libs rospack -L/opt/ros/groovy/lib -lrospack -ltinyxml -l/usr/lib/libpython2.7.so -l/usr/lib/libboost_filesystem-mt.so -l/usr/lib/libboost_program_options-mt.so -l/usr/lib/libboost_system-mt.so Absolute paths can be seen in a good number of standard packages' *.pc files. Why can't we simply put [python2.7, boost_filesystem-mt, boost_program_options-mt, boost_system-mt]? g++ won't take this format, is cmake magically converting these? - Brian