[cmake-developers] [CMake] Windows rpath emulation

Nils Gladitz nilsgladitz at gmail.com
Tue Sep 23 13:37:42 EDT 2014


On 23.09.2014 19:12, Roland Schulz wrote:
>
> Have you got a solution to the problem you mentioned in your first email:
>
>     I suppose it might be slightly more complex given that the import
>     library that is being linked to and the DLL that corresponds to the
>     import library might not be in the same location (and cmake might know
>     the location of the one but not always the location of the the other).
>
>

- For local targets CMake does have the location (these are also 
interesting but the main selling point would imo be external libraries).

- For imported targets CMake may have DLL locations.
More likely when set up by package configuration files (e.g. Qt5 sets 
them) than when set up by find modules (e.g. FindQt4 does not set them).
There might be incentive to add those locations when they start to be 
more useful.

- It might be possible to guess the DLL location from a given import 
library (assuming it was provided with a full path); probably not 
something you can rely on but it might be able to guess the location 
often enough to be convenient

- Additional locations could be provided manually by target property

>     On windows when you deploy to a system different from your own it
>     is expected and common practice that you deploy your runtime
>     requirements as well.
>     You can not expect a preexisting installation of your library
>     requirements nor can you expect them to be in the same location as
>     in your development system.
>
>
> I think you are referring to making a binary cpack installation 
> package. I was thinking about installing on the build system. Then It 
> would still be different from the build directory.

Yes, but I think that is the least common use case (maybe even more so 
on windows).
CPack uses the same install commands for packaging and local install and 
I don't think CMake makes the distinction between deploying locally and 
remotely.

Nils
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/cmake-developers/attachments/20140923/873ecc14/attachment-0002.html>


More information about the cmake-developers mailing list