public inbox for binutils@sourceware.org
 help / color / mirror / Atom feed
* Re: [Bug binutils/30281] error: multiple definition of `pwrite@GLIBC_2.2'; on i586-linux-gnu
       [not found] ` <bug-30281-10543-Y4pxwK86oR@http.sourceware.org/bugzilla/>
@ 2023-03-29 16:43   ` Vladimir Mezentsev
  2023-03-31  7:18     ` Martin Liška
  0 siblings, 1 reply; 2+ messages in thread
From: Vladimir Mezentsev @ 2023-03-29 16:43 UTC (permalink / raw)
  To: binutils



On 3/29/23 05:24, mliska at suse dot cz wrote:
> https://sourceware.org/bugzilla/show_bug.cgi?id=30281
>
> Martin Liska <mliska at suse dot cz> changed:
>
>             What    |Removed                     |Added
> ----------------------------------------------------------------------------
>                   CC|                            |hjl.tools at gmail dot com
>             Assignee|vladimir.mezentsev at oracle dot c |unassigned at sourceware dot org
>                     |om                          |
>               Status|ASSIGNED                    |NEW
>            Component|gprofng                     |binutils
>
> --- Comment #3 from Martin Liska <mliska at suse dot cz> ---
> Great, thank you Vladimir. I was able to isolate that and reduce it. It started
> with 20ea3acc727f3be6322dfbd881e506873535231d and it's regression since
> 20ea3acc727f3be6322dfbd881e506873535231d.
>
> $ cat iotrace.i
> extern __inline __attribute__((__gnu_inline__)) void open64(int, ...) {}
> int __attribute__((__symver__("open64@GLIBC_2.2"))) __collector_open64_2_2() {}
> void open64(int, ...) {}
>
> $ cat libgprofng.ver
> GLIBC_2.2 {
>    global:
>      open64;
> };
>
> $ gcc iotrace.i -shared -fPIC -O2 -Wl,--version-script,libgprofng.ver
> -flto-partition=max -flto=auto -B ~/Programming/binutils/objdir/ld -fuse-ld=bfd
> /usr/bin/ld.bfd: /tmp/ccLS2iVj.ltrans1.ltrans.o: in function `open64':
> <artificial>:(.text+0x0): multiple definition of `open64@GLIBC_2.2';
> /tmp/ccLS2iVj.ltrans0.ltrans.o:<artificial>:(.text+0x0): first defined here
> collect2: error: ld returned 1 exit status
>
> while -fuse-ld=mold or -fuse-ld=lld works fine. gold is also affected.
>
> @H.J. Can you please take a look?
>

  How do you configure a build to set  -fuse-ld=lld ?

On Ol9, a build is configured with the -flto option. How can I turn it 
off ?

Thank you,
-Vladimir



^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [Bug binutils/30281] error: multiple definition of `pwrite@GLIBC_2.2'; on i586-linux-gnu
  2023-03-29 16:43   ` [Bug binutils/30281] error: multiple definition of `pwrite@GLIBC_2.2'; on i586-linux-gnu Vladimir Mezentsev
@ 2023-03-31  7:18     ` Martin Liška
  0 siblings, 0 replies; 2+ messages in thread
From: Martin Liška @ 2023-03-31  7:18 UTC (permalink / raw)
  To: Vladimir Mezentsev, binutils

On 3/29/23 18:43, Vladimir Mezentsev via Binutils wrote:
> 
> 
> On 3/29/23 05:24, mliska at suse dot cz wrote:
>> https://sourceware.org/bugzilla/show_bug.cgi?id=30281
>>
>> Martin Liska <mliska at suse dot cz> changed:
>>
>>             What    |Removed                     |Added
>> ----------------------------------------------------------------------------
>>                   CC|                            |hjl.tools at gmail dot com
>>             Assignee|vladimir.mezentsev at oracle dot c |unassigned at sourceware dot org
>>                     |om                          |
>>               Status|ASSIGNED                    |NEW
>>            Component|gprofng                     |binutils
>>
>> --- Comment #3 from Martin Liska <mliska at suse dot cz> ---
>> Great, thank you Vladimir. I was able to isolate that and reduce it. It started
>> with 20ea3acc727f3be6322dfbd881e506873535231d and it's regression since
>> 20ea3acc727f3be6322dfbd881e506873535231d.
>>
>> $ cat iotrace.i
>> extern __inline __attribute__((__gnu_inline__)) void open64(int, ...) {}
>> int __attribute__((__symver__("open64@GLIBC_2.2"))) __collector_open64_2_2() {}
>> void open64(int, ...) {}
>>
>> $ cat libgprofng.ver
>> GLIBC_2.2 {
>>    global:
>>      open64;
>> };
>>
>> $ gcc iotrace.i -shared -fPIC -O2 -Wl,--version-script,libgprofng.ver
>> -flto-partition=max -flto=auto -B ~/Programming/binutils/objdir/ld -fuse-ld=bfd
>> /usr/bin/ld.bfd: /tmp/ccLS2iVj.ltrans1.ltrans.o: in function `open64':
>> <artificial>:(.text+0x0): multiple definition of `open64@GLIBC_2.2';
>> /tmp/ccLS2iVj.ltrans0.ltrans.o:<artificial>:(.text+0x0): first defined here
>> collect2: error: ld returned 1 exit status
>>
>> while -fuse-ld=mold or -fuse-ld=lld works fine. gold is also affected.
>>
>> @H.J. Can you please take a look?
>>


Hello.

(It seems the email hasn't reached bugzilla for some reason)

> 
>  How do you configure a build to set  -fuse-ld=lld ?

Build of binutils? You should be able to add (-fuse-ld=lld)to C{,CXX}FLAGS.

> 
> On Ol9, a build is configured with the -flto option. How can I turn it off ?

A build of binutils?

Martin

> 
> Thank you,
> -Vladimir
> 
> 


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2023-03-31  7:18 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <bug-30281-10543@http.sourceware.org/bugzilla/>
     [not found] ` <bug-30281-10543-Y4pxwK86oR@http.sourceware.org/bugzilla/>
2023-03-29 16:43   ` [Bug binutils/30281] error: multiple definition of `pwrite@GLIBC_2.2'; on i586-linux-gnu Vladimir Mezentsev
2023-03-31  7:18     ` Martin Liška

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).