El 23/02/11 08:49, Nikola Ciprich escribió: > Hello Avi, Hi, > when trying to compile(link) various targets, I get: > LINK sparc-softmmu/qemu-system-sparc > pci-stub.o: In function `do_pci_info_print': > /usr/src/redhat/BUILD/qemu-kvm-0.14.0/hw/pci-stub.c:36: multiple definition > of `do_pci_info_print' > pci.o:/usr/src/redhat/BUILD/qemu-kvm-0.14.0/hw/pci.c:1398: first defined here > /usr/bin/ld: Warning: size of symbol `do_pci_info_print' changed from 147 in > pci.o to 50 in pci-stub.o > pci-stub.o: In function `do_pci_info': > /usr/src/redhat/BUILD/qemu-kvm-0.14.0/hw/pci-stub.c:31: multiple definition > of `do_pci_info' > pci.o:/usr/src/redhat/BUILD/qemu-kvm-0.14.0/hw/pci.c:1560: first defined here > /usr/bin/ld: Warning: size of symbol `do_pci_info' changed from 150 in pci.o > to 50 in pci-stub.o > pci.o: In function `pci_update_mappings': > pci.c:(.text+0xa91): undefined reference to `pci_bridge_get_base' > pci.c:(.text+0xaa5): undefined reference to `pci_bridge_get_limit' > pci.c:(.text+0xb7b): undefined reference to `pci_bridge_get_base' > pci.c:(.text+0xb8e): undefined reference to `pci_bridge_get_limit' > pci.o: In function `pci_get_devices_list': > pci.c:(.text+0x2024): undefined reference to `pci_bridge_get_limit' > pci.c:(.text+0x2036): undefined reference to `pci_bridge_get_base' > pci.c:(.text+0x2043): undefined reference to `pci_bridge_get_limit' > pci.c:(.text+0x2050): undefined reference to `pci_bridge_get_base' > pci.c:(.text+0x2060): undefined reference to `pci_bridge_get_limit' > pci.c:(.text+0x2070): undefined reference to `pci_bridge_get_base' > collect2: ld returned 1 exit status > make[1]: *** [qemu-system-sparc] Error 1 > make: *** [subdir-sparc-softmmu] Error 2 I hit this problem too and after a long night I tracked it back to some odd merge, this patch solved the issue for me.
2010-11-10 Francisco Blas Izquierdo Riera <klond...@xiscosoft.es> Somehow pci.o was added so it was needed on all targets breaking NO_PCI ones. This patch intends to fix that
* Makefile.objs: Add pci.o back into hw-obj-$(CONFIG_PCI) * Makefile.target: Remove pci.o diff -ru /tmp/aaa/qemu-kvm-0.14.0.old/Makefile.objs /tmp/aaa/qemu-kvm-0.14.0/Makefile.objs --- /tmp/aaa/qemu-kvm-0.14.0.old/Makefile.objs 2011-02-23 06:02:16.818182597 +0100 +++ /tmp/aaa/qemu-kvm-0.14.0/Makefile.objs 2011-02-23 06:00:35.439182597 +0100 @@ -170,7 +170,7 @@ hw-obj-y += loader.o hw-obj-$(CONFIG_VIRTIO) += virtio.o virtio-console.o hw-obj-y += fw_cfg.o -hw-obj-$(CONFIG_PCI) += pci_bridge.o +hw-obj-$(CONFIG_PCI) += pci.o pci_bridge.o hw-obj-$(CONFIG_PCI) += msix.o msi.o hw-obj-$(CONFIG_PCI) += pci_host.o pcie_host.o hw-obj-$(CONFIG_PCI) += ioh3420.o xio3130_upstream.o xio3130_downstream.o diff -ru /tmp/aaa/qemu-kvm-0.14.0.old/Makefile.target /tmp/aaa/qemu-kvm-0.14.0/Makefile.target --- /tmp/aaa/qemu-kvm-0.14.0.old/Makefile.target 2011-02-23 06:02:16.835182597 +0100 +++ /tmp/aaa/qemu-kvm-0.14.0/Makefile.target 2011-02-23 06:00:35.454182597 +0100 @@ -195,7 +195,7 @@ # System emulator target ifdef CONFIG_SOFTMMU -obj-y = arch_init.o cpus.o monitor.o pci.o machine.o gdbstub.o vl.o balloon.o +obj-y = arch_init.o cpus.o monitor.o machine.o gdbstub.o vl.o balloon.o # virtio has to be here due to weird dependency between PCI and virtio-net. # need to fix this properly obj-$(CONFIG_NO_PCI) += pci-stub.o
signature.asc
Description: OpenPGP digital signature