[Pkg-mpd-maintainers] Bug#871121: mpd: FTBFS: iso9660.h:277:45: error: flexible array member 'iso9660_dir_s::filename' not at end of 'struct iso9660_pvd_s'

Lucas Nussbaum lucas at debian.org
Sun Aug 6 21:30:50 UTC 2017


Source: mpd
Version: 0.20.9-2
Severity: serious
Tags: buster sid
User: debian-qa at lists.debian.org
Usertags: qa-ftbfs-20170805 qa-ftbfs
Justification: FTBFS on amd64

Hi,

During a rebuild of all packages in sid, your package failed to build on
amd64.

Relevant part (hopefully):
> g++ -DHAVE_CONFIG_H -I.  -DNDEBUG -I./src -I/usr/include -DSYSTEM_CONFIG_FILE_LOCATION='"/etc/mpd.conf"'  -DCPPUNIT_HAVE_RTTI=0 -Wdate-time -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -pthread -Wno-error=deprecated-declarations -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -fvisibility=hidden -fno-threadsafe-statics -fmerge-all-constants -ffast-math -ftree-vectorize -ffunction-sections -fdata-sections -Wall -Wextra -Wmissing-declarations -Wshadow -Wpointer-arith -Wcast-qual -Wwrite-strings -Wsign-compare -c -o test/test_test_byte_reverse-test_byte_reverse.o `test -f 'test/test_byte_reverse.cxx' || echo './'`test/test_byte_reverse.cxx
> rm -f libmpd.a
> ar cru libmpd.a src/output/libmpd_a-Internal.o src/output/libmpd_a-Registry.o src/output/libmpd_a-MultipleOutputs.o src/output/libmpd_a-SharedPipeConsumer.o src/output/libmpd_a-Source.o src/output/libmpd_a-OutputThread.o src/output/libmpd_a-Domain.o src/output/libmpd_a-OutputControl.o src/output/libmpd_a-OutputState.o src/output/libmpd_a-OutputPrint.o src/output/libmpd_a-OutputCommand.o src/output/libmpd_a-OutputPlugin.o src/output/libmpd_a-Finish.o src/output/libmpd_a-Init.o src/mixer/libmpd_a-MixerControl.o src/mixer/libmpd_a-MixerType.o src/mixer/libmpd_a-MixerAll.o src/libmpd_a-notify.o src/protocol/libmpd_a-Ack.o src/protocol/libmpd_a-ArgParser.o src/protocol/libmpd_a-Result.o src/command/libmpd_a-CommandError.o src/command/libmpd_a-AllCommands.o src/command/libmpd_a-QueueCommands.o src/command/libmpd_a-TagCommands.o src/command/libmpd_a-PlayerCommands.o src/command/libmpd_a-PlaylistCommands.o src/command/libmpd_a-FileCommands.o src/command/libmpd_a-OutputCommands.o src/command/libmpd_a-MessageCommands.o src/command/libmpd_a-OtherCommands.o src/command/libmpd_a-CommandListBuilder.o src/libmpd_a-Idle.o src/libmpd_a-IdleFlags.o src/decoder/libmpd_a-DecoderError.o src/decoder/libmpd_a-DecoderThread.o src/decoder/libmpd_a-DecoderControl.o src/decoder/libmpd_a-Bridge.o src/decoder/libmpd_a-DecoderPrint.o src/filter/libmpd_a-FilterConfig.o src/filter/libmpd_a-FilterPlugin.o src/filter/libmpd_a-FilterRegistry.o src/filter/libmpd_a-Observer.o src/client/libmpd_a-Client.o src/client/libmpd_a-ClientEvent.o src/client/libmpd_a-ClientExpire.o src/client/libmpd_a-ClientGlobal.o src/client/libmpd_a-ClientIdle.o src/client/libmpd_a-ClientList.o src/client/libmpd_a-ClientNew.o src/client/libmpd_a-ClientProcess.o src/client/libmpd_a-ClientRead.o src/client/libmpd_a-ClientWrite.o src/client/libmpd_a-ClientMessage.o src/client/libmpd_a-ClientSubscribe.o src/client/libmpd_a-ClientFile.o src/client/libmpd_a-Response.o src/libmpd_a-Listen.o src/libmpd_a-LogInit.o src/libmpd_a-LogBackend.o src/libmpd_a-Log.o src/libmpd_a-ls.o src/libmpd_a-IOThread.o src/libmpd_a-Instance.o src/win32/libmpd_a-Win32Main.o src/libmpd_a-MusicBuffer.o src/libmpd_a-MusicPipe.o src/libmpd_a-MusicChunk.o src/libmpd_a-Mapper.o src/libmpd_a-Partition.o src/libmpd_a-Permission.o src/player/libmpd_a-CrossFade.o src/player/libmpd_a-Thread.o src/player/libmpd_a-Control.o src/libmpd_a-PlaylistError.o src/libmpd_a-PlaylistPrint.o src/libmpd_a-PlaylistSave.o src/playlist/libmpd_a-PlaylistStream.o src/playlist/libmpd_a-PlaylistMapper.o src/playlist/libmpd_a-PlaylistAny.o src/playlist/libmpd_a-PlaylistSong.o src/playlist/libmpd_a-PlaylistQueue.o src/playlist/libmpd_a-Print.o src/db/libmpd_a-PlaylistVector.o src/queue/libmpd_a-Queue.o src/queue/libmpd_a-QueuePrint.o src/queue/libmpd_a-QueueSave.o src/queue/libmpd_a-Playlist.o src/queue/libmpd_a-PlaylistControl.o src/queue/libmpd_a-PlaylistEdit.o src/queue/libmpd_a-PlaylistTag.o src/queue/libmpd_a-PlaylistState.o src/libmpd_a-ReplayGainGlobal.o src/libmpd_a-DetachedSong.o src/libmpd_a-LocateUri.o src/libmpd_a-SongUpdate.o src/libmpd_a-SongLoader.o src/libmpd_a-SongPrint.o src/libmpd_a-SongSave.o src/libmpd_a-StateFile.o src/libmpd_a-Stats.o src/libmpd_a-TagPrint.o src/libmpd_a-TagSave.o src/libmpd_a-TagFile.o src/libmpd_a-TagStream.o src/libmpd_a-TimePrint.o src/mixer/libmpd_a-Volume.o src/libmpd_a-SongFilter.o src/libmpd_a-PlaylistFile.o src/unix/libmpd_a-SignalHandlers.o src/libmpd_a-CommandLine.o src/unix/libmpd_a-Daemon.o src/queue/libmpd_a-PlaylistUpdate.o src/command/libmpd_a-StorageCommands.o src/command/libmpd_a-DatabaseCommands.o src/db/libmpd_a-Count.o src/db/libmpd_a-LightSong.o src/db/update/libmpd_a-UpdateDomain.o src/db/update/libmpd_a-Service.o src/db/update/libmpd_a-Queue.o src/db/update/libmpd_a-UpdateIO.o src/db/update/libmpd_a-Editor.o src/db/update/libmpd_a-Walk.o src/db/update/libmpd_a-UpdateSong.o src/db/update/libmpd_a-Container.o src/db/update/libmpd_a-Remove.o src/db/update/libmpd_a-ExcludeList.o src/db/libmpd_a-DatabaseGlue.o src/db/libmpd_a-Configured.o src/db/libmpd_a-DatabaseSong.o src/db/libmpd_a-DatabasePrint.o src/db/libmpd_a-DatabaseQueue.o src/db/libmpd_a-DatabasePlaylist.o src/db/libmpd_a-DatabaseLock.o src/db/libmpd_a-Selection.o src/db/update/libmpd_a-InotifyDomain.o src/db/update/libmpd_a-InotifySource.o src/db/update/libmpd_a-InotifyQueue.o src/db/update/libmpd_a-InotifyUpdate.o src/command/libmpd_a-StickerCommands.o src/lib/sqlite/libmpd_a-Error.o src/sticker/libmpd_a-StickerDatabase.o src/sticker/libmpd_a-StickerPrint.o src/sticker/libmpd_a-SongSticker.o src/command/libmpd_a-NeighborCommands.o src/libmpd_a-TagArchive.o src/db/update/libmpd_a-Archive.o src/zeroconf/libmpd_a-ZeroconfGlue.o src/zeroconf/libmpd_a-AvahiPoll.o src/zeroconf/libmpd_a-ZeroconfAvahi.o  
> ar: `u' modifier ignored since `D' is the default (see `U')
> rm -f libutil.a
> ar cru libutil.a src/util/Exception.o src/util/Alloc.o src/util/UTF8.o src/util/MimeType.o src/util/StringView.o src/util/AllocatedString.o src/util/StringUtil.o src/util/StringCompare.o src/util/WStringCompare.o src/util/DivideString.o src/util/SplitString.o src/util/FormatString.o src/util/Tokenizer.o src/util/TimeParser.o src/util/UriUtil.o src/util/LazyRandomEngine.o src/util/HugeAllocator.o src/util/PeakBuffer.o src/util/OptionParser.o src/util/ByteReverse.o src/util/format.o src/util/bit_reverse.o 
> ar: `u' modifier ignored since `D' is the default (see `U')
> In file included from src/archive/plugins/Iso9660ArchivePlugin.cxx:34:0:
> /usr/include/cdio/iso9660.h:277:45: error: flexible array member 'iso9660_dir_s::filename' not at end of 'struct iso9660_pvd_s'
>    char             filename[EMPTY_ARRAY_SIZE];
>                                              ^
> /usr/include/cdio/iso9660.h:310:20: note: next member 'char iso9660_pvd_s::root_directory_filename' declared here
>    char             root_directory_filename;      /**< Is '\\0' or root
>                     ^~~~~~~~~~~~~~~~~~~~~~~
> /usr/include/cdio/iso9660.h:283:8: note: in the definition of 'struct iso9660_pvd_s'
>  struct iso9660_pvd_s {
>         ^~~~~~~~~~~~~
> /usr/include/cdio/iso9660.h:277:45: error: flexible array member 'iso9660_dir_s::filename' not at end of 'struct iso9660_svd_s'
>    char             filename[EMPTY_ARRAY_SIZE];
>                                              ^
> /usr/include/cdio/iso9660.h:424:20: note: next member 'char iso9660_svd_s::root_directory_filename' declared here
>    char             root_directory_filename;      /**< Is '\\0' or root
>                     ^~~~~~~~~~~~~~~~~~~~~~~
> /usr/include/cdio/iso9660.h:392:8: note: in the definition of 'struct iso9660_svd_s'
>  struct iso9660_svd_s {
>         ^~~~~~~~~~~~~
> ranlib libutil.a
> rm -f libthread.a
> ar cru libthread.a src/thread/Util.o src/thread/Thread.o 
> rm -f libnet.a
> ar: `u' modifier ignored since `D' is the default (see `U')
> ranlib libthread.a
> ar cru libnet.a src/net/ToString.o src/net/Resolver.o src/net/StaticSocketAddress.o src/net/AllocatedSocketAddress.o src/net/SocketAddress.o src/net/SocketUtil.o src/net/SocketError.o 
> ar: `u' modifier ignored since `D' is the default (see `U')
> rm -f libsystem.a
> ranlib libnet.a
> ar cru libsystem.a src/system/FatalError.o src/system/FileDescriptor.o src/system/fd_util.o src/system/EventPipe.o src/system/EventFD.o src/system/SignalFD.o src/system/EPollFD.o src/system/Clock.o 
> ar: `u' modifier ignored since `D' is the default (see `U')
> rm -f libevent.a
> ranlib libsystem.a
> ar cru libevent.a src/event/PollGroupPoll.o src/event/PollGroupWinSelect.o src/event/SignalMonitor.o src/event/TimeoutMonitor.o src/event/IdleMonitor.o src/event/DeferredMonitor.o src/event/MaskMonitor.o src/event/SocketMonitor.o src/event/BufferedSocket.o src/event/FullyBufferedSocket.o src/event/MultiSocketMonitor.o src/event/ServerSocket.o src/event/Call.o src/event/Loop.o 
> ar: `u' modifier ignored since `D' is the default (see `U')
> rm -f libicu.a
> ar cru libicu.a src/lib/icu/libicu_a-Collate.o src/lib/icu/libicu_a-Converter.o src/lib/icu/libicu_a-Util.o src/lib/icu/libicu_a-Init.o  
> Makefile:7913: recipe for target 'src/archive/plugins/libarchive_a-Iso9660ArchivePlugin.o' failed
> make[3]: *** [src/archive/plugins/libarchive_a-Iso9660ArchivePlugin.o] Error 1

The full build log is available from:
   http://aws-logs.debian.net/2017/08/05/mpd_0.20.9-2_unstable.log

A list of current common problems and possible solutions is available at
http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!

About the archive rebuild: The rebuild was done on EC2 VM instances from
Amazon Web Services, using a clean, minimal and up-to-date chroot. Every
failed build was retried once to eliminate random failures.



More information about the Pkg-mpd-maintainers mailing list