[CMake] Shared Libraries & dependencies

Robert Dailey rcdailey at gmail.com
Thu Dec 11 15:44:07 EST 2008


On Thu, Dec 11, 2008 at 12:19 PM, Andreas Pakulat <apaku at gmx.de> wrote:

> On 11.12.08 10:55:42, Robert Dailey wrote:
> > If I have a project in CMake that builds a shared library, what will
> happen
> > if I set this shared library project as a parameter in
> > target_link_libraries() for an executable project? What will happen to
> the
> > DLL file? Will CMake copy it to the executable output directory
> > automatically, or must I do this manually through CMake -E?
>
> Inside the builddir? No it won't. If you however use the install() method
> together with the RUNTIME, ARCHIVE and LIBRARY options it will install the
> .dll into the RUNTIME directory and the import library into the ARCHIVE
> directory. So just make sure to provide all three for any install() call
> and .exe and .dll will end up in the same directory.


I'm finding that INSTALL() will not work unless a target is already defined.
This logically makes sense, of course, however this makes the order in which
I define my targets sensitive. Is it possible to reference a target before
it has been defined, or must I organize my projects accordingly?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.cmake.org/pipermail/cmake/attachments/20081211/6388dd60/attachment.htm>


More information about the CMake mailing list