On Apr 8, 2016, at 7:25 AM, Markus Armbruster wrote: > [Wasn't delivered correctly by eggs.gnu.org, resending] > > Paolo Bonzini <pbonz...@redhat.com> writes: > >> On 30/03/2016 18:35, Programmingkid wrote: >>> Remove macro that prevents event_notifier_init_fd() function from being >>> compiled on Mac OS X. >>> >>> This patch fixes this error: >>> >>> Undefined symbols for architecture x86_64: >>> "_event_notifier_init_fd", referenced from: >>> _process_msg in ivshmem.o >>> ld: symbol(s) not found for architecture x86_64 >>> collect2: error: ld returned 1 exit status >>> make[1]: *** [qemu-system-ppc] Error 1 >>> make: *** [subdir-ppc-softmmu] Error 2 >>> >>> >>> Signed-off-by: John Arbuckle <programmingk...@gmail.com> >> >> This is intentional, this feature of ivshmem.o could never work on OS X. >> I am not sure that failing the build is intentional. Markus, any clue? > > ivshmem.o should only be linked when CONFIG_EVENTFD is set. pci.mak has > > CONFIG_IVSHMEM=$(CONFIG_EVENTFD) > > The compile error shown above indicates CONFIG_EVENTFD=y for make (since > ivshmem.o gets linked), but !defined(CONFIG_EVENTFD) for C (or else > event_notifier_init_fd() would exist). Your build tree is messed up, or > the makefiles are broken. Try starting over with a fresh build tree.
I did a fresh clone of the QEMU repository. Then tried building QEMU. This is the error I saw: CC contrib/ivshmem-client/ivshmem-client.o CC contrib/ivshmem-client/main.o LINK ivshmem-client collect2: error: ld terminated with signal 11 [Segmentation fault] make: *** [ivshmem-client] Error 1 make: *** Deleting file `ivshmem-client' It is different from the last error, but it still involves something called ivshmem.