Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
From: Timo Rothenpieler <timo@rothenpieler.org>
To: ffmpeg-devel@ffmpeg.org
Subject: Re: [FFmpeg-devel] duplicate symbol '_dec_init' in: fftools/ffmpeg_dec.o
Date: Mon, 18 Mar 2024 02:21:23 +0100
Message-ID: <baf91dab-22a6-4038-a508-d2a3209851d1@rothenpieler.org> (raw)
In-Reply-To: <5357232A-BE68-4F57-8FB9-29E8AA0E72EB@remlab.net>

On 18.03.2024 01:32, Rémi Denis-Courmont wrote:
> 
> 
> Le 17 mars 2024 14:13:18 GMT-07:00, Timo Rothenpieler <timo@rothenpieler.org> a écrit :
>> On 17.03.2024 18:37, Rémi Denis-Courmont wrote:
>>>
>>>
>>> Le 17 mars 2024 10:29:39 GMT-07:00, Andreas Rheinhardt <andreas.rheinhardt@outlook.com> a écrit :
>>>> Rémi Denis-Courmont:
>>>>>
>>>>>
>>>>> Le 16 mars 2024 13:58:23 GMT-07:00, James Almer <jamrial@gmail.com> a écrit :
>>>>>>> Seems the conflict comes from
>>>>>>> https://code.videolan.org/videolan/libbluray/-/blob/master/src/libbluray/disc/dec.c?ref_type=heads#L287
>>>>>>>     and
>>>>>>> https://github.com/FFmpeg/FFmpeg/commit/c4de5778bceab3c15f1239f1f16816749a7fd3b6
>>>>>>>
>>>>>>> Perhaps you could also try asking libbluray if they could use an internal
>>>>>>> prefix. Otherwise you might need to do a rename of that function on
>>>>>>> ffmpeg's side.
>>>>>>
>>>>>> libbluray 100% needs to either prefix it, or hid it so it's not exported. It's a library, so it should not be exporting such simple and short unprefix named symbols.
>>>>>
>>>>> AFAICT, FFmpeg is just as guilty as Libbluray there. To support static linking, all non-static symbols should be name-spaced, and here both FFmpeg and libbluray are failing, and thus both should be fixed IMO.
>>>>>
>>>>
>>>> You forgot that FFmpeg's dec_init is in fftools/the executable, whereas
>>>> libbluray's is in the library.
>>>
>>> Oh well then it's 100% a problem with FFmpeg, or with the build system used by OP (Possibly a problem with Apple's tools). A static library being imported is not supposed to be able to cause symbol conflicts.
>>
>> A static library, as opposed to a shared one, has no concept of private symbols.
>> The symbol already is not exported by libbr, but in the case of static linking, there is no distinction between exported and hidden symbols.
> 
> Yes. But an symbol from an import library is not supposed to conflict with a symbol from the executable (or library) being linked. Hence this looks like a bug in the FFmpeg build system (or whatever OP did with it).

How would it be a bug in the ffmpeg build system?
What is it supposed to do? When statically linking, there simply is 
nothing that can be done about it.
Again: static linking has no concept of public and private symbols. It's 
just pulling in object files relatively mindlessly.

> Of course libbr should not leak unprefixed symbols regardless, but that's *not* the root cause.

Yes, as long as they claim to support static linking, having such 
symbols is definitely an issue on their side.
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

  reply	other threads:[~2024-03-18  1:21 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-03-16  1:04 Helmut K. C. Tessarek
2024-03-16 14:07 ` Gnattu OC via ffmpeg-devel
2024-03-16 14:26   ` Christopher Degawa
2024-03-16 20:58     ` James Almer
2024-03-17 17:26       ` Rémi Denis-Courmont
2024-03-17 17:29         ` Andreas Rheinhardt
2024-03-17 17:37           ` Rémi Denis-Courmont
2024-03-17 21:13             ` Timo Rothenpieler
2024-03-18  0:32               ` Rémi Denis-Courmont
2024-03-18  1:21                 ` Timo Rothenpieler [this message]
2024-03-18  2:31                   ` Rémi Denis-Courmont
2024-03-18  7:32                     ` Martin Storsjö
2024-03-18 10:52                       ` Andreas Rheinhardt
2024-03-16 21:09     ` Helmut K. C. Tessarek
2024-03-17  8:05       ` Gnattu OC via ffmpeg-devel
2024-03-17 12:10         ` Timo Rothenpieler
2024-03-17 19:45           ` Helmut K. C. Tessarek
2024-03-16 20:55   ` Helmut K. C. Tessarek
2024-03-17 21:19 ` Helmut K. C. Tessarek

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=baf91dab-22a6-4038-a508-d2a3209851d1@rothenpieler.org \
    --to=timo@rothenpieler.org \
    --cc=ffmpeg-devel@ffmpeg.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
		ffmpegdev@gitmailbox.com
	public-inbox-index ffmpegdev

Example config snippet for mirrors.


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git