<html>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
</head>
<body text="#000000" bgcolor="#FFFFFF">
Hi Simon,<br>
<br>
Thank you for the info.<br>
<br>
Do you know if there are any plans to add -Bdynamic support and make
-Bstatic/-Bdynamic compatible with GNU ld?<br>
I am giving lld a try building the Boost libraries and this is a
real show stopper. Boost.Build passes both -Bstatic and -Bdynamic to
the linker which makes lld think the output file is static, so it
totally ignores shared libraries. This breaks the build as some libs
do not have static counterparts and the linker fails with the
"library not found" error.<br>
<br>
Oleg<br>
<br>
<div class="moz-cite-prefix">On 17.09.2014 17:52, Simon Atanasyan
wrote:<br>
</div>
<blockquote
cite="mid:CAGyS+DTG9R9f+v34pT2phCCgr=eatKmVGrXMhUfExEkV+zLBMw@mail.gmail.com"
type="cite">
<div dir="ltr">
<div class="gmail_default" style="font-family:'courier
new',monospace">Hi,</div>
<div class="gmail_extra"><br>
</div>
<div class="gmail_extra">
<div class="gmail_default" style="font-family:'courier
new',monospace">This functionality is implemented say
incompletely. Now -Bdynamic is not recognized at all.
-Bstatic and -Bshareable are aliases for -static and -shared
options respectively. The linker uses the last
option specified in a command line just to select type of
output file.</div>
</div>
<div class="gmail_extra"><br>
</div>
<div class="gmail_extra">
<div class="gmail_default" style="font-family:'courier
new',monospace">Simon</div>
</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">On Wed, Sep 17, 2014 at 4:30 PM, Oleg
Ranevskyy <span dir="ltr"><<a moz-do-not-send="true"
href="mailto:llvm.mail.list@gmail.com" target="_blank">llvm.mail.list@gmail.com</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px
0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<div text="#000000" bgcolor="#FFFFFF"> Hello LLD
developers!<br>
<br>
Lld is claimed to be compatible with the existing linker
options.<br>
However, there is a discrepancy in how the -Bstatic
switch (disable linking against shared libs) is treated
by lld and GNU ld.<br>
<br>
According to the GNU ld docs, the switch affects library
searching for -l options <b>which follow it</b>.<br>
This means -Bstatic can be used multiple times in the
command line to disable dynamic linking for particular
-l options. For example:<br>
<br>
ld -Bstatic -lslib1 -lslib2 -Bdynamic -ldlib1 -Bstatic
-lslib3...<br>
<br>
Even though the GNU linker won't search for so-files for
slib1, slib2 and slib3, so-file for dlib1 will still be
considered as it is preceded by -Bdynamic.<br>
<br>
Lld behaves differently. <br>
-Bdynamic is not recognized yet, whereas -Bstatic
applies static linkage on the binary level, i.e. it's no
longer possible to link against any shared lib. Lld
looks for static archives only if -Bstatic is met in the
command line.<br>
<br>
Is this intentional behaviour or this functionality just
hasn't been fully implemented yet?<br>
<br>
Thank you!<br>
<br>
Kind regards,<br>
Oleg<br>
</div>
<br>
_______________________________________________<br>
LLVM Developers mailing list<br>
<a moz-do-not-send="true"
href="mailto:LLVMdev@cs.uiuc.edu">LLVMdev@cs.uiuc.edu</a>
<a moz-do-not-send="true"
href="http://llvm.cs.uiuc.edu" target="_blank">http://llvm.cs.uiuc.edu</a><br>
<a moz-do-not-send="true"
href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev"
target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev</a><br>
<br>
</blockquote>
</div>
<br>
<br clear="all">
<div><br>
</div>
-- <br>
Simon Atanasyan
</div>
</div>
</blockquote>
<br>
</body>
</html>