[ITA] llvm
Takashi Yano
takashi.yano@nifty.ne.jp
Fri Jul 18 05:44:45 GMT 2025
On Thu, 17 Jul 2025 22:25:56 -0700 (PDT)
Jeremy Drake <cygwin@jdrake.com> wrote:
> On Fri, 18 Jul 2025, Takashi Yano via Cygwin-apps wrote:
>
> > On Thu, 17 Jul 2025 22:06:40 -0700 (PDT)
> > Jeremy Drake wrote:
> > > On Fri, 18 Jul 2025, Takashi Yano via Cygwin-apps wrote:
> > >
> > > > On Thu, 17 Jul 2025 17:24:04 -0700 (PDT)
> > > > Jeremy Drake <cygwin@jdrake.com> wrote:
> > > >
> > > > > On Tue, 15 Jul 2025, Takashi Yano via Cygwin-apps wrote:
> > > > >
> > > > > > On Fri, 11 Jul 2025 16:16:09 -0700 (PDT)
> > > > > > Jeremy Drake <cygwin@jdrake.com> wrote:
> > > > > >
> > > > > > > On Fri, 11 Jul 2025, Takashi Yano via Cygwin-apps wrote:
> > > > > > >
> > > > > > > > BTW, I just realized we haven’t submitted the ITP for lld yet.
> > > > > > > > Jeremy, would you like to do it? Or shall I do that?
> > > > > > > > I'm asking because I did not contribute anything for lld.
> > > > > > >
> > > > > > > I sent something. I was holding off because it can't be built yet until
> > > > > > > llvm is updated.
> > > > > >
> > > > > > Thanks! I've updated the maintainer as folows.
> > > > > > +clang Jeremy Drake/Takashi Yano
> > > > > > +compiler-rt Takashi Yano
> > > > > > +libcxx Takashi Yano
> > > > > > +libcxxabi Takashi Yano
> > > > > > +libunwind Takashi Yano
> > > > > > +lld Jeremy Drake
> > > > > > +llvm Jeremy Drake/Takashi Yano
> > > > > >
> > > > > >
> > > > >
> > > > > I pushed the playground lld branch as master to lld.
> > > >
> > > > I tried lld in the master branch. clang can work with
> > > > lld without -L/usr/lib/w32api. However, g++ cannot.
> > > >
> > > > $ clang++ -fuse-ld=lld hello.cc
> > > > $ g++ -fuse-ld=lld hello.cc
> > > > lld: error: unable to find library -ladvapi32
> > > > lld: error: unable to find library -lshell32
> > > > lld: error: unable to find library -luser32
> > > > lld: error: unable to find library -lkernel32
> > > > collect2: error: ld returned 1 exit status
> > > > $
> > > >
> > > > Is this intentional behaviour?
> > > >
> > >
> > > I think it is,
> > > https://maskray.me/blog/2020-12-19-lld-and-gnu-linker-incompatibilities
> > >
> > > * Default library paths.
> > > * GNU ld has default library paths.
> > > * ld.lld doesn't. This is intentional so https://reviews.llvm.org/D70048
> > > (NetBSD) cannot be accepted.
> >
> > My understandig is that the patch
> > 0207-LLD-add-library-path-w32api.patch
> > adds search path /usr/lib/w32api to embedded paths.
> >
> > So, without -L/usr/lib/w32api lld, can link them regardless
> > of compiler (clang++ and g++) invoking lld. Right?
>
> That patch ended up dropped from the PATCH_URI in the lld.cygport. I
> don't think it's safe both from the standpoint that it wouldn't respect
> sysroot and that it's impossible to tell the difference between a mingw
> and cygwin target from within LLD (the process triple is the host).
Oh, I see. I confirmed that if enabling that patch, gcc also can link
with win32 libs.
--
Takashi Yano <takashi.yano@nifty.ne.jp>
More information about the Cygwin-apps
mailing list