<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/129688>129688</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[Flang] position of `-L$LLVM_DIR/lib`
</td>
</tr>
<tr>
<th>Labels</th>
<td>
flang:driver
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
kawashima-fj
</td>
</tr>
</table>
<pre>
The Flang driver puts `-L$LLVM_DIR/lib -lflang_rt.runtime` after OS library directory `-L` options when linking.
```console
$ flang -### test.f90 |& tail -1 | tr ' ' '\n' | grep '^"-[Ll]'
"-L/home/foo/llvm/bin/../lib/aarch64-unknown-linux-gnu"
"-L/usr/lib/gcc/aarch64-linux-gnu/13"
"-L/lib/aarch64-linux-gnu"
"-L/usr/lib/aarch64-linux-gnu"
"-L/lib"
"-L/usr/lib"
"-L/home/foo/llvm/lib"
"-lflang_rt.runtime"
"-lm"
"-lgcc"
"-lgcc_s"
"-lc"
"-lgcc"
"-lgcc_s"
```
If you install Flang (and Flang-RT) manually on an environment where the OS-provided Flang package is already installed, this has a problem.
When user-installed Flang is invoked, `libflang_rt.runtime` in the user-installed directory should be linked. However, OS-provided `libflang_rt.runtime` in `/lib` (or `/lib/TRIPLE` or `/lib64`, depending on OS) is linked instead.
https://github.com/llvm/llvm-project/issues/100403 and https://github.com/open-mpi/ompi/issues/13116 suffer from this problem.
Should we prioritize `-L$LLVM_DIR/lib` over `-L/lib`?
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJykVV9vpDYQ_zTmZQQy5s-yDzzksod60lapkqh9jAwM4FtjI9vsdvvpK8PmQtrm7qRKXq09nvmN5zd_4NaKXiGWJPtEskPAZzdoU574hdtBjDzsvga1bq_l84BQSa56aI04o4FpdhZITsMjYenx-PuvL4cvj4RVUtQQys6rvhgXmVk5MSLJKfDOoYGHJ5CiNtxcoRUGG6fN9YaTU9CTE1pZuAyoQAp1EqqPCL3zK6frarSyWqIXsRQWTxASlqwLHFoXdXsKZHdPWA6OCwlh7I_gDBC2e_2R7F4t29099AanVfaZMBaS7NNRkuzgJd4P82FWgx6RsKrT2gcqzyNhVS0UYVUUraETVnFumiFPw1mdlL6oUAo1_xn2aiaMbbBma76Z9E2zMdwYVHHy3uq9i5-A_oHqovSBLftB5O-U_p3xt6txs19C3Z5e7Obc_JTmayGsdfGlg6ueQSjruJS3IiWs4KpdD-HjM2F7GLmauZRX0Aq4AlRnYbQaUTlfbQbBDQgPT-Fk9Fm0eDOGiTcn3iMIC1wa5O311RW2hN2DG4SFgVvgMBldSxxv9fqHL-HZogm_6d8ghQWhzvq0ApCcSlH_V8MItbzpHxhvXWMHPcsWalw6BdsIftEXPKPxsNtIvuvCE7kmM6eeN202IlY9P3757fh56c3NRZ4u23tocULVCtV7Wh-ePNHC3t6zEIW8vREyODdZktwRVvmaF26Y66jR46ai5Hn0r_6KjSOsEtbOaH0XUJrSBHxGvwOiJ1ThOAm_Xf_eAJI4zsHOXYcGOqPHNW3vE_a00nlBmIzQRjjxF34w4RY6_BS8Xd9kJKkIvQvaMmn3yZ4HWMa7NKZFwfZxMJRxuy8Kxuqk7pIiy1Ksm6TAtqvrZkeLeheIklGW0YSmcZwUcRyl-yLpKMU2adOuyWKSUhy5kJFnKtKmD5YQy5jt86IIJK9R2mWWM7akmyR367z2rZMdAlMuHNdzb0lKpbDOvmE54eTyJVjKlGQHmLQVfiCD7j5mIpiNLP9Hcte3n0v2dwAAAP__f60BEg">