<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/145326>145326</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
`clang -print-runtime-dir` from apt.llvm.org lies (broken in 19 and 20, fine in 18 ...)
</td>
</tr>
<tr>
<th>Labels</th>
<td>
clang
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
exoosh
</td>
</tr>
</table>
<pre>
Hi,
when attempting to use the `-print-runtime-dir` switch with the compiler driver, this shows a directory that doesn't exist:
```
$ stat $(clang -print-runtime-dir)
stat: cannot statx '/usr/lib/llvm-20/lib/clang/20/lib/x86_64-pc-linux-gnu': No such file or directory
```
I have versions 18, 19 and 20 installed in parallel from apt.llvm.org and iterating over these versions I get:
```
$ for((i=18;i<21;i++)); do command ls -d $(clang-$i -print-runtime-dir); done
/usr/lib/llvm-18/lib/clang/18/lib/linux
ls: cannot access '/usr/lib/llvm-19/lib/clang/19/lib/x86_64-pc-linux-gnu': No such file or directory
ls: cannot access '/usr/lib/llvm-20/lib/clang/20/lib/x86_64-pc-linux-gnu': No such file or directory
```
As you can see **it works in Clang 18!**
Corresponding `--version` output:
```
$ for((i=18;i<21;i++)); do clang-$i --version|head -n 1; done
Ubuntu clang version 18.1.8 (++20240731025043+3b5b5c1ec4a3-1~exp1~20240731145144.92)
Ubuntu clang version 19.1.7 (++20250114103332+cd708029e0b2-1~exp1~20250114103446.78)
Ubuntu clang version 20.1.7 (++20250612073421+199e02a36433-1~exp1~20250612193439.130)
```
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJy8VU2P2zYQ_TX0ZSCBHFJfBx1kB0Zz6a3ngpLGFhuZFEjK673ktxeUdzdOslugaBGAMGRqOG_45r2RDsGcLVHLij0rPu30GifnW7o5F6Zd78bn9jfD8MB4x3j3NJEFHSNdlmjsGaKDNRDEiYCVPFu8sTHzq43mQtloPCs5hCcThwmeTJy2wMFdFjOTh9GbK3mGB4iTCRAm9xRAw2g8DdH5Z4iTjjA6CpZhFYFuJkQmu3sprOQvi3cMFYSoIzBUDOth1vYM71SDDeNdCmSyg0Fb6-J27gYMK4bHNXiGx9n06Xe-XjLkb_-3pAyPD1u3uvyzVNkyZLOx6y072zXlkR387iCswwQnMxM4_-1OPxbOu88w6SvBlXwwzgYQdWJENKDtCMjB2BD1PNMIxsKifXqe4eTdBfQS81Rm7vx5CzeRvN4a467kE9vhIfNnONPH_J2cZ1gzrA2Tn0TN5N4weUCxPeB-W01acg-jS128JMg5QDY-8p4xVOYD8rejljbEn8lON_-B7IetjWLGuzk8NE8PA4XwUfdE83PC5j9271_A_wLxdAGe3ZrKgUAEDDuGnYnw5PyXkARz2KyQaBT3l_dzB-c9hcXZMYklWTd7kUlyrFvjsv5_SnlQxRtKdZhIj5BZEA-q-KNfbVzvJ151C6LORV7DBpmSI0fFKyk4FlxJhnvZF30xCBqUlpn4SrdFfH0NEqoQSuUN3r3_PkCTi7z6DqDgQijBpZTIcD-MFa85NsR7fAB4DVKqzKv6HwCQvwNQCuSVVKkve9E0xFHLUkn5HUApUDRSySYXkt8R3rqxG1s5NrLRO2pFVfCyVpJXu6kVqi7LUTdDVYpx6Bt-aqRALWgU1NRY7kx7T45SbAzlvFLUU48npEKq08AUp4s289t02ZkQVmqFKiSWu1n3NIfti4H4Im1MHw_fbsLv13Ngis8mxPAtRTRxppaV_MPxXPJ35tpsKDms7r37QjZp-m02pkF5Mpa2zRryPGfY7FY_t1OMSzIqwyPD49nEae3zwV1erPnq0MW7v2iIDI_b_UIaEPcrXlv8OwAA___JpRyh">