[CMake] Question about install()

Robert Dailey rcdailey at gmail.com
Mon Dec 8 11:19:25 EST 2008


On Mon, Dec 8, 2008 at 4:13 AM, Hendrik Sattler <post at hendrik-sattler.de>wrote:

> Robert Dailey schrieb:
> > Thanks for clarifying. Everything works now, however this doesn't really
> > solve my problem. See, I need to copy shared library files over
> differently
> > depending on my configuration and also depending on my platform. On Linux
> > the library names will have different suffix/prefix. This becomes even
> > harder when I have to consider debug vs release, since the libraries are
> > also different between configurations as well.
>
> So what? Instead of copying the DLLs to the build location of the
> executable, copy _all_ relevant files to an extra location of your choice.


This makes absolutely no sense to me. To copy "all relevant files", I have
to know their name. To know their name, I need to know the platform and the
build configuration, since as I said before the names are different in both
cases.


> The LOCATION_<CONFIG> property also exists.
>
> Why do you even care for the name of the actual files? What purpose does
> it have to name debug and release libraries differently but no being
> interchangeable?


I don't think you understand. I have no control over the names of the shared
libraries, since I am using third party libraries, such as boost. For
example, in debug I need to use boost_filesystem-mt-gd.dll, and in release I
use boost_filesystem-mt.dll. On Linux debug & release, the suffix will
probably .so instead of .dll. I cannot debug my applications unless the DLL
files can be copied to the location of the executable.

I think your confusion lies in the fact that I'm copying the DLLs manually.
Normally, developers would setup their projects in such a way that it is the
responsibility of the person building the source code to go out and download
& install third party dependencies as needed. In my case, I am keeping all
dependencies with my project along with prebuilt binaries for all platforms
I plan to support.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.cmake.org/pipermail/cmake/attachments/20081208/06027587/attachment.htm>


More information about the CMake mailing list