[CMake] Packaging debug symbol files on Windows

Andreas Pakulat apaku at gmx.de
Mon Jul 27 09:46:37 EDT 2015


Hi Nils,

On Mon, Jul 27, 2015 at 3:12 PM, Nils Gladitz <nilsgladitz at gmail.com> wrote:

> On 07/27/2015 02:25 PM, Andreas Pakulat wrote:
>
>> Hi,
>>
>> I'm trying to generate a zip file (on Windows) for a shared library
>> including the generated debug symbols in pdb files with CPack.
>> Unfortunately CPack does not seem to pick up the pdb files all by itself
>> and after cross-reading the cpack docs in the cmake wiki I didn't see
>> any switch to enable such behavior.
>>
>> Did somebody already do this and if so how?
>>
>
> What gets installed is decided by install() commands in your project
> rather than by CPack.
>
> You can use the $<TARGET_PDB_FILE:tgt> [1] generator expression to install
> pdb files.
>
> e.g. install(FILES $<TARGET_PDB_FILE:my_target> DESTINATION bin)
>

Ah, interesting. I would've thought that an install() would automatically
include the pdb files, after all those are usually useful after the build
process and the builddir is often gone once a library is being used.

I've meanwhile also noticed that the default compiler flags that CMake uses
include the debug information in the dll itself (dll size is doubled), so
for now don't even have to have the separate pdb files packaged anymore (in
this case the pdb info is small enough to just keep in the dll).

Thanks for the pointer.

Andreas
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/cmake/attachments/20150727/e697be2b/attachment.html>


More information about the CMake mailing list