#9275: Missing -latomic for arches without GCC builtins atomic
----------------------------------+---------------------------------------
Reporter: marillat | Type: defect
Status: new | Priority: normal
Component: avformat | Version: unspecified
Keywords: | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
----------------------------------+---------------------------------------
atomic support has been added in libavformat/fifo.c since 4.4 but GCC
doesn't support atomic builtin for all architecture and fallback to link
with libatomic.
The problem is that ffmpeg assume that all architectures are using GCC
builtins and the build fail with 'undefined reference to' errors.
The solution is to link libavformat with libatomic.
Here is the GCC documentation about atomic
https://gcc.gnu.org/wiki/Atomic
Under Debian unstable I see two architectures who uses libatomic armel and
powerpc. Here is the output for the powerpc build.
{{{
/usr/bin/ld: libavformat/fifo.o: in function `fifo_init':
./libavformat/fifo.c:519: undefined reference to `__atomic_store_8'
/usr/bin/ld: libavformat/fifo.o: in function `fifo_write_trailer':
./libavformat/fifo.c:624: undefined reference to `__atomic_fetch_add_8'
/usr/bin/ld: ./libavformat/fifo.c:631: undefined reference to
`__atomic_store_8'
/usr/bin/ld: libavformat/fifo.o: in function `fifo_thread_write_packet':
./libavformat/fifo.c:188: undefined reference to `__atomic_fetch_sub_8'
/usr/bin/ld: libavformat/fifo.o: in function `fifo_consumer_thread':
./libavformat/fifo.c:457: undefined reference to `__atomic_load_8'
/usr/bin/ld: libavformat/fifo.o: in function `fifo_write_packet':
./libavformat/fifo.c:597: undefined reference to `__atomic_fetch_add_8'
collect2: error: ld returned 1 exit status
}}}
--
Ticket URL: <https://trac.ffmpeg.org/ticket/9275>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker_______________________________________________
FFmpeg-trac mailing list
[email protected]
https://ffmpeg.org/mailman/listinfo/ffmpeg-trac
To unsubscribe, visit link above, or email
[email protected] with subject "unsubscribe".