On Thu, 10 Oct 2019, Eric Noulard wrote: ... > No they can't because the maximum size is burried into the binary ELF file, > that why CMake "reserve" some space with many ";;;" in order to replace > BUILD_RPATH with INSTALL_RPATH when doing > 'install'.
Hi Eric, Interesting - any ideas on how big the padding is? > Note however that you should be able to "delete" RPATH: chrpath -d > and then rely on LD_LIBRARY_PATH, ld.so.config, etc.... > > The thing I don't quite understand why you need to replace/amend RPATH. In > my (very personal) use case when I have to integrate third-party software: My use case is where: - I install some software, made available to others via environment modules (http://modules.sourceforge.net/). - The installed software is dynamically linked to other libraries, also installed via environment modules. - I don't want to make people load modules for prerequisite libraries (and prerequisites for the prerequisites...) to use the software. A complication is that I end up having to build lots of copies of the same software but built with different prerequisites... so it has to be automated on top of the upstream project's build system. For applications using libraries, I've tended to use wrapper scripts as it means fewer arguments with build systems. But for libraries using libraries, rpath's the only real option. My rpath can get quite long. ... > If the developers of the software you are using have chosen in their CMake > build-system to define an install RPATH your only safe bet > is probably to build & install the software at your favorite location or > propose an upstream patch for supporting unspecified RPATH. > > But may be I miss something in your use case? I guess I should be proposing upstream patches but, there are so many software projects to do this for, it has always been simpler to carry forward a small patch or patches. Perhaps I should be a better citizen. In this case, what feels easiest is to keep a patch commenting out the developer's RPATH definition in CMakeLists.txt, identified by Jakub earlier. Cheers, Mark -- 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: https://cmake.org/mailman/listinfo/cmake