<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/73244>73244</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[17 Regression] clang++ fails to link, when installed in a non-standard location
</td>
</tr>
<tr>
<th>Labels</th>
<td>
clang
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
doko42
</td>
</tr>
</table>
<pre>
seen with 17.0.5, works with 16.0.8. clang++ linkage fails, when installed in a non-standard location.
clang++-17 -std=c++14 -stdlib=libc++ foo.cpp -lc++experimental -o o
/usr/bin/ld: cannot find -lc++experimental: No such file or directory
when calling with -v, and looking at the invocation of the linker, the link command varies:
@@ -17,7 +17,6 @@
-L/lib/../lib64
-L/usr/lib/x86_64-linux-gnu
-L/usr/lib/../lib64
--L/usr/lib/llvm-16/bin/../lib
-L/lib
-L/usr/lib
foo.o
the installation prefix is /usr/lib/llvm-1[67]. LLVM 17 doesn't emit the -L<prefix>/bin/../lib flag anymore. This works with 16 and older versions.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyUVEuTszYQ_DXiMgWFxMs-cFivw8nJIZXKNSXQABMLySUJf95_n-KxifeRw3dx4aY1o-6ZRnpPg0GsWXFixTmScxitq5W92lxErVVvtUc08IPCCLxK0qRg4hV-WHf1O1gmaXJIoNPSDEycmDiBJnOVA0IvSfuVP6IBMj5IrVEBGZBgrIl9kEZJp0DbTgayJmHpmaUv2-9TyZhXEPugWHbuNoTnK6CpZdlZU7vD0FubdLcbxHpH8HFDRxOaIDXEFuzeQjSzd0w0LRkmGq1Y9gKdNMYG6Mmo7wsspN8s-LkboSeNYB0octgF696e774q7qTWZIbNqPi-OCHNItZeF1gGCCMCmfuuHmy_Iot_6Bb6-z_o7DQtZ-_SEXqWvTw3Y3nK8hRiXjHxWsHizvJUwvZiI0F8WXRSy0STJNtjmT-_2_zYGI9D-VeZx5rM_IgHM_8f73Ol-AtD6_sU8_Jfp99PfL7Vtw02cJmpfRa82bau02bczWFPDyAP33ZnxamsWHFO4HL581fgFSiL3jBRBcCJtjnEF5a9boVY9suX-0Kv5QDSvE3WYQJ_jOQ_5mCdrdUKHdzRebLG7-scqTpTx-woI6x5laZVkXJxjMa6TEXB0xTLquW8KzohsTjwY8Vlm4uMdxHVIhUZ5yLjeVaIY8IVZurYiwwL7LuDYnmKkySdLEIT64aIvJ-xrjKR55GWLWq_hluIPU5iybmrV2PaefAsTzX54P-rECjo9YvAK_gdB4d-EcOK84eQr-GGYNf9_KmQR7PT9RjCbd1j0TDRDBTGuU06O-0zex_dzdm_sQtMNKsuz0SzSvsnAAD__1K6cOc">