# Visual Studio natvis files in ITK

**URL:** https://discourse.cmake.org/t/visual-studio-natvis-files-in-itk/8145
**Category:** Usage
**Tags:** os:windows, comp:msvc, gen:vs
**Created:** [May 17, 2023, 3:32pm UTC](https://discourse.cmake.org/t/visual-studio-natvis-files-in-itk/8145 "2023-05-17T15:32:51Z")
**Posts on this page:** 6
**Page:** 1

<div class="post-metadata">

### Author: ![dzenanz](https://discourse.cmake.org/user_avatar/discourse.cmake.org/dzenanz/32/83_2.png) [@dzenanz](https://discourse.cmake.org/u/dzenanz)
#### Post date: [May 17, 2023, 3:32pm UTC](https://discourse.cmake.org/t/visual-studio-natvis-files-in-itk/8145/1 "2023-05-17T15:32:51Z")

</div>

I am trying to embed ITK’s [natvis](https://github.com/InsightSoftwareConsortium/ITK/blob/master/Utilities/Debugger/ITK.natvis) file in to the debug database, as per [/NATVIS linker option](https://learn.microsoft.com/en-us/cpp/build/reference/natvis-add-natvis-to-pdb?view=msvc-170) and [Add a .natvis file to a C++ project](https://learn.microsoft.com/en-us/visualstudio/debugger/create-custom-views-of-native-objects?view=vs-2022#add-a-natvis-file-to-a-c-project). My branch with a very small commit is [here](https://github.com/dzenanz/ITK/tree/natvis). As far as I can tell, it is not working, and I don’t know why. Do you have any suggestions?

---

<div class="post-metadata">

### Author: ![ben.boeckel](https://discourse.cmake.org/letter_avatar_proxy/v4/letter/b/ea5d25/32.png) [@ben.boeckel](https://discourse.cmake.org/u/ben.boeckel)
#### Post date: [May 17, 2023, 4:42pm UTC](https://discourse.cmake.org/t/visual-studio-natvis-files-in-itk/8145/2 "2023-05-17T16:42:46Z")

</div>

CMake doesn’t really have natvis support. Many related issues are linked from [this one](https://gitlab.kitware.com/cmake/cmake/-/issues/22899).

---

<div class="post-metadata">

### Author: ![dzenanz](https://discourse.cmake.org/user_avatar/discourse.cmake.org/dzenanz/32/83_2.png) [@dzenanz](https://discourse.cmake.org/u/dzenanz)
#### Post date: [May 17, 2023, 4:59pm UTC](https://discourse.cmake.org/t/visual-studio-natvis-files-in-itk/8145/3 "2023-05-17T16:59:38Z")

</div>

I saw [this comment](https://gitlab.kitware.com/cmake/cmake/-/issues/16043#note_869302) and thought that it is supported. I guess I read too much between the lines 😊

---

<div class="post-metadata">

### Author: ![ben.boeckel](https://discourse.cmake.org/letter_avatar_proxy/v4/letter/b/ea5d25/32.png) [@ben.boeckel](https://discourse.cmake.org/u/ben.boeckel)
#### Post date: [May 17, 2023, 8:51pm UTC](https://discourse.cmake.org/t/visual-studio-natvis-files-in-itk/8145/4 "2023-05-17T20:51:04Z")

</div>

That probably works for the Visual Studio generator, but Ninja and NMake files are still oblivious.

---

<div class="post-metadata">

### Author: ![dzenanz](https://discourse.cmake.org/user_avatar/discourse.cmake.org/dzenanz/32/83_2.png) [@dzenanz](https://discourse.cmake.org/u/dzenanz)
#### Post date: [May 17, 2023, 8:58pm UTC](https://discourse.cmake.org/t/visual-studio-natvis-files-in-itk/8145/5 "2023-05-17T20:58:28Z")

</div>

I am trying it with Visual Studio, and it is not working. There is no `/natvis` on the command line, and the variables in the watch do not look right.

---

<div class="post-metadata">

### Author: ![ben.boeckel](https://discourse.cmake.org/letter_avatar_proxy/v4/letter/b/ea5d25/32.png) [@ben.boeckel](https://discourse.cmake.org/u/ben.boeckel)
#### Post date: [May 18, 2023, 12:04pm UTC](https://discourse.cmake.org/t/visual-studio-natvis-files-in-itk/8145/6 "2023-05-18T12:04:49Z")

</div>

Hrm. Then that lack of testing would seem relevant. Natvis support probably just needs some dedicated focus to implement.
