I've created a sample project to replicate my issue in hopes that it would make it easier to troubleshoot.
Thanks for any help, Zac https://github.com/zmb3/cmaketest On Mon, Oct 12, 2015 at 8:53 AM, Zac Bergquist <zbergquis...@gmail.com> wrote: > Hello, > > I'm trying to fix a project so that its output is relocatable. The > project is a library that itself depends on libpcap. My goal is to be able > to import the library into my CMake application and have CMake > automatically link libpcap with it. > > I'm using a toolchain file that invokes an ARM cross compiler, sets > CMAKE_INSTALL_PREFIX and appends it to CMAKE_FIND_ROOT_PATH. This all > seems to work well. > > What I'm seeing is that the exported files that get installed to > CMAKE_INSTALL_PREFIX contain absolute paths to libpcap on my machine, which > make them useless to other team members. > > The first thing I changed was to use CONFIGURE_PACKAGE_CONFIG_FILE instead > of CONFIGURE_FILE. This got rid of absolute paths in the generated CMake > config file. > > However, I still have absolute paths in the CMake target import file that > gets generated. The IMPORTED_LINK_INTERFACE_LIBRARIES target property has > an absolute path instead of one relative to CMAKE_INSTALL_PREFIX. > > I've read the "Creating Relocatable Packages" [1] section of the CMake > packages documentation. I'm pretty sure this is what I'm running into, but > I don't quite understand how to solve it. The documentation says that I > should be using imported targets, but I'm not sure how to do so. The > library is just using its own FindPCAP.cmake file to locate libpcap. > > Does anyone know of an example of a CMake package that imports other > libraries? I could also try to create a minimal example project with this > setup if it would be helpful. > > Thanks, > Zac > > [1]: > https://cmake.org/cmake/help/v3.3/manual/cmake-packages.7.html#creating-relocatable-packages > >
-- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake