# IO DLLs not found

**URL:** <https://discourse.itk.org/t/io-dlls-not-found/3464>\
**Category:** Uncategorized\
**Created:** [September 15, 2020, 9:22am UTC](https://discourse.itk.org/t/io-dlls-not-found/3464 "2020-09-15T09:22:09Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![simon.rit](https://discourse.itk.org/letter_avatar_proxy/v4/letter/s/f08c70/32.png) [@simon.rit](https://discourse.itk.org/u/simon.rit)\
**Post date:** [September 15, 2020, 9:22am UTC](https://discourse.itk.org/t/io-dlls-not-found/3464/1 "2020-09-15T09:22:10Z")

</div>

I am trying to setup the new CI infrastructure in RTK but the windows “build-test-cxx” fails, see

> <https://github.com/SimonRit/RTK/pull/376>

  
When doing the same compilation locally, it turns out that the IO DLLs (ITKIOGDCM-5.2.dll, ITKIOTIFF-5.2.dll, ITKIOMeta-5.2.dll, ITKIOImageBase-5.2.dll) are not found and the tests are not executed. Do you know what could be wrong?

---

<div class="post-metadata">

**Author:** ![blowekamp](https://discourse.itk.org/user_avatar/discourse.itk.org/blowekamp/32/79_2.png) [@blowekamp](https://discourse.itk.org/u/blowekamp)\
**Post date:** [September 15, 2020, 10:57am UTC](https://discourse.itk.org/t/io-dlls-not-found/3464/2 "2020-09-15T10:57:01Z")

</div>

Hello Simon,

Where is `ITK_MODULE_RTK_DEPENDS` defined?

> **[SimonRit/RTK](https://github.com/SimonRit/RTK/search?q=ITK_MODULE_RTK_DEPENDS&type=code)**
>
> Reconstruction Toolkit. Contribute to SimonRit/RTK development by creating an account on GitHub.

And are the IO modules included there?

---

<div class="post-metadata">

**Author:** ![simon.rit](https://discourse.itk.org/letter_avatar_proxy/v4/letter/s/f08c70/32.png) [@simon.rit](https://discourse.itk.org/u/simon.rit)\
**Post date:** [September 15, 2020, 1:26pm UTC](https://discourse.itk.org/t/io-dlls-not-found/3464/3 "2020-09-15T13:26:45Z")

</div>

I think it’s set by the `itk_module` macro

> <https://github.com/SimonRit/RTK/blob/master/itk-module.cmake#L49-L53>

  
based on  

> <https://github.com/SimonRit/RTK/blob/master/itk-module.cmake#L5-L31>

---

<div class="post-metadata">

**Author:** ![blowekamp](https://discourse.itk.org/user_avatar/discourse.itk.org/blowekamp/32/79_2.png) [@blowekamp](https://discourse.itk.org/u/blowekamp)\
**Post date:** [September 15, 2020, 1:36pm UTC](https://discourse.itk.org/t/io-dlls-not-found/3464/4 "2020-09-15T13:36:29Z")

</div>

> [@simon.rit](#):
>
> I think it’s set by the `itk_module` macro

If you are building the test directory as part of the whole remote module you would not need to redo a find ITK package.

Here is a recent module I worked which could be used as an example:

> <https://github.com/InsightSoftwareConsortium/ITKSimpleITKFilters/blob/master/test/CMakeLists.txt>

I’m sure the RTK case is more complicate, but hopefully it gives you some insight to what may need to be changed.

---

<div class="post-metadata">

**Author:** ![simon.rit](https://discourse.itk.org/letter_avatar_proxy/v4/letter/s/f08c70/32.png) [@simon.rit](https://discourse.itk.org/u/simon.rit)\
**Post date:** [September 16, 2020, 9:24am UTC](https://discourse.itk.org/t/io-dlls-not-found/3464/5 "2020-09-16T09:24:37Z")

</div>

Thanks for the suggestion. Indeed, RTK would probably benefit a refactoring to ITK standard. But even when I tried to do it for one test, I still get the same error. See the new (temp) version of the CMakeLists.txt

> <https://github.com/SimonRit/RTK/commit/87bfc3aca06ee2172a751d1c9c3851de910af475>

  
and the result of the compilation [here](https://my.cdash.org/viewTest.php?onlyfailed&buildid=1884694). Any other suggestion?

---

<div class="post-metadata">

**Author:** ![blowekamp](https://discourse.itk.org/user_avatar/discourse.itk.org/blowekamp/32/79_2.png) [@blowekamp](https://discourse.itk.org/u/blowekamp)\
**Post date:** [September 16, 2020, 11:04am UTC](https://discourse.itk.org/t/io-dlls-not-found/3464/6 "2020-09-16T11:04:44Z")

</div>

Good idea to break it down to a simple standard case. I’m not sure what might be causing the problem.

Hopefully it will be clearly apparent to some one else now. 🙂

---

<div class="post-metadata">

**Author:** ![simon.rit](https://discourse.itk.org/letter_avatar_proxy/v4/letter/s/f08c70/32.png) [@simon.rit](https://discourse.itk.org/u/simon.rit)\
**Post date:** [September 28, 2020, 10:49am UTC](https://discourse.itk.org/t/io-dlls-not-found/3464/7 "2020-09-28T10:49:25Z")

</div>

I have found a working patch

> <https://github.com/SimonRit/RTK/commit/c31f5539d33d9a2089d6487295ddabb40174ab59>

  
but this seems contradictory with the possibility to define these paths  

> <https://github.com/InsightSoftwareConsortium/ITK/blob/master/CMake/ITKModuleExternal.cmake#L38-L51>

  
Since I’d prefer to keep RTK path separate, does anyone see a fix for this?

---

<div class="post-metadata">

**Author:** ![simon.rit](https://discourse.itk.org/letter_avatar_proxy/v4/letter/s/f08c70/32.png) [@simon.rit](https://discourse.itk.org/u/simon.rit)\
**Post date:** [October 23, 2020, 7:39pm UTC](https://discourse.itk.org/t/io-dlls-not-found/3464/8 "2020-10-23T19:39:04Z")

</div>

For the record, it was just a problem of ITK shared libraries not being in the path. See this PR in the template module to avoid similar problems in the future:

> <https://github.com/InsightSoftwareConsortium/ITKModuleTemplate/pull/94>
