[libcxx-commits] [PATCH] D107892: [runtimes] Allow overriding where CMake installs RUNTIME type libraries (DLLs)
Petr Hosek via Phabricator via libcxx-commits
libcxx-commits at lists.llvm.org
Wed Sep 8 11:08:55 PDT 2021
phosek added a comment.
In D107892#2989982 <https://reviews.llvm.org/D107892#2989982>, @phosek wrote:
> In D107892#2989781 <https://reviews.llvm.org/D107892#2989781>, @mstorsjo wrote:
>
>> In D107892#2989709 <https://reviews.llvm.org/D107892#2989709>, @phosek wrote:
>>
>>> If we still need this, then I'd prefer `${LLVM_DEFAULT_TARGET_TRIPLE}/bin` following https://wiki.debian.org/Multiarch/LibraryPathOverview.
>>
>> Well, this path is only ever used for windows builds - but yeah, that pattern, <triple>/bin is what I use for mingw things in general too.
>>
>> But isn’t that a bit inconsistent when the other per-target files are installed into lib/<triple> and include/<triple>?
>
> AFAIK the reason why these are different is that if your binary `foo` uses dynamic linking, then the shared libraries for `<triple>/bin/foo` would be in `<triple>/lib` which is different from `lib/<triple>` which contains libraries used when targeting `<triple>`.
To give a more practical albeit contrived example, you could end up with this:
x86_64-linux-gnu/
bin/
clang
lib/
libz.so
aarch86_64-linux-gnu/
bin/
clang
lib/
libz.so
include/
...
riscv64-linux-gnu/
...
lib/
riscv64-linux-gnu/
libc++.a
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D107892/new/
https://reviews.llvm.org/D107892
More information about the libcxx-commits
mailing list