# Adainit/fini and ELF .init/.fini

**URL:** https://forum.ada-lang.io/t/adainit-fini-and-elf-init-fini/1913
**Category:** General
**Created:** [March 19, 2025, 9:38am UTC](https://forum.ada-lang.io/t/adainit-fini-and-elf-init-fini/1913 "2025-03-19T09:38:02Z")
**Posts on this page:** 4
**Page:** 1

<div class="post-metadata">

### Author: ![Lucretia](https://forum.ada-lang.io/user_avatar/forum.ada-lang.io/lucretia/32/17_2.png) [@Lucretia](https://forum.ada-lang.io/u/Lucretia)
#### Post date: [March 19, 2025, 9:38am UTC](https://forum.ada-lang.io/t/adainit-fini-and-elf-init-fini/1913/1 "2025-03-19T09:38:02Z")

</div>

Is there any reasons why GNAT doesn’t put the adainit/fini calls into the ELF .init/.fini sections??

---

<div class="post-metadata">

### Author: ![dmitry-kazakov](https://forum.ada-lang.io/user_avatar/forum.ada-lang.io/dmitry-kazakov/32/522_2.png) [@dmitry-kazakov](https://forum.ada-lang.io/u/dmitry-kazakov)
#### Post date: [March 19, 2025, 10:07am UTC](https://forum.ada-lang.io/t/adainit-fini-and-elf-init-fini/1913/2 "2025-03-19T10:07:50Z")

</div>

Isn’t it related to Library\_Auto\_Init?

I am very happy that initialization of a dynamic library can be turned off and called explicitly.

Under Windows you will get a deadlock if your library uses any tasking stuff. This is because Windows loads a library under a critical section which Ada initialization tries re-take. Critical sections are not re-entrant. So Library\_Auto\_Init must be always False.

---

<div class="post-metadata">

### Author: ![Lucretia](https://forum.ada-lang.io/user_avatar/forum.ada-lang.io/lucretia/32/17_2.png) [@Lucretia](https://forum.ada-lang.io/u/Lucretia)
#### Post date: [March 19, 2025, 12:10pm UTC](https://forum.ada-lang.io/t/adainit-fini-and-elf-init-fini/1913/3 "2025-03-19T12:10:24Z")

</div>

Thanks, the wording on that isn’t great. Is that set by default on ELF platforms?

---

<div class="post-metadata">

### Author: ![dmitry-kazakov](https://forum.ada-lang.io/user_avatar/forum.ada-lang.io/dmitry-kazakov/32/522_2.png) [@dmitry-kazakov](https://forum.ada-lang.io/u/dmitry-kazakov)
#### Post date: [March 19, 2025, 12:21pm UTC](https://forum.ada-lang.io/t/adainit-fini-and-elf-init-fini/1913/4 "2025-03-19T12:21:32Z")

</div>

It think the default is True.
