Skip to content

Warning: libevent-loop-base.a the table of contents is empty

Since commit 178bacb6 (Merge tag 'block-pull-request') we get this warning on Darwin:

...
[379/1097] Linking static target libevent-loop-base.a
warning: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib:
archive library: libevent-loop-base.a the table of contents is empty
(no object file members in the library define global symbols)
...

Having:

$ nm libevent-loop-base.a

libevent-loop-base.a(event-loop-base.c.o):
00000000000005d0 d _.compoundliteral
                 U ___stack_chk_fail
                 U ___stack_chk_guard
00000000000005e0 d _aio_max_batch_info
0000000000000000 t _do_qemu_init_register_types
                 U _error_setg_internal
00000000000001d4 t _event_loop_base_can_be_deleted
0000000000000054 t _event_loop_base_class_init
0000000000000138 t _event_loop_base_complete
0000000000000260 t _event_loop_base_get_param
0000000000000400 s _event_loop_base_info
000000000000001c t _event_loop_base_instance_init
00000000000002c4 t _event_loop_base_set_param
                 U _object_class_dynamic_cast_assert
                 U _object_class_property_add
                 U _object_dynamic_cast_assert
                 U _object_get_class
                 U _register_module_init
0000000000000010 t _register_types
0000000000000600 d _thread_pool_max_info
00000000000005f0 d _thread_pool_min_info
                 U _type_register_static
                 U _visit_type_int64
0000000000000468 s l_.str
0000000000000478 s l_.str.1
00000000000005a6 s l_.str.10
000000000000047f s l_.str.2
000000000000048e s l_.str.3
00000000000004d9 s l_.str.4
00000000000004e7 s l_.str.5
00000000000004eb s l_.str.6
00000000000004fb s l_.str.7
000000000000050b s l_.str.8
0000000000000574 s l_.str.9
00000000000004c9 s l___func__.EVENT_LOOP_BASE
000000000000055a s l___func__.EVENT_LOOP_BASE_GET_CLASS
0000000000000545 s l___func__.USER_CREATABLE_CLASS
000000000000058c s l___func__.event_loop_base_set_param
0000000000000000 t ltmp0
0000000000000400 s ltmp1
0000000000000468 s ltmp2
00000000000005d0 d ltmp3
0000000000000610 s ltmp4
0000000000002b78 s ltmp5

Maybe smth missing on the meson side?

$ git-diff 554623226..178bacb66 meson.build
...
+event_loop_base = files('event-loop-base.c')
+event_loop_base = static_library('event-loop-base', sources:
event_loop_base + genh,
+                                 build_by_default: true)
+event_loop_base = declare_dependency(link_whole: event_loop_base,
+                                     dependencies: [qom])
...

Host info:

The Meson build system
Version: 0.59.3
Project version: 7.0.50
C compiler for the host machine: clang (clang 13.0.0 "Apple clang version 13.0.0 (clang-1300.0.29.30)")
C linker for the host machine: clang ld64 711
Host machine cpu family: aarch64
Host machine cpu: arm64

  Block layer support
    coroutine backend            : sigaltstack
    coroutine pool               : YES
    Block whitelist (rw)         :
    Block whitelist (ro)         :
    Use block whitelist in tools : NO
    VirtFS support               : YES
    build virtiofs daemon        : NO
    Live block migration         : YES
    replication support          : YES
    bochs support                : YES
    cloop support                : YES
    dmg support                  : YES
    qcow v1 support              : YES
    vdi support                  : YES
    vvfat support                : YES
    qed support                  : YES
    parallels support            : YES
    FUSE exports                 : NO
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information