On 04/10/2013 09:05 PM, Sasha Levin wrote: > Hm, what would LD create before this patch? I thought that the default > would be to create a binary that corresponds to the platform you're > building in, so if you build on ppc64 you'd get ppc64 binaries, no? > Hi Sasha, Thanks for the prompt response. Powerpc had historically supported 32 bit userspace on a 64 bit kernel, before everything moved 64 bit. I'd hit this issue since the default output of 'ld' was turning out to be 'elf32-powerpc' on my ppc64 build machine. This was running ld-2.22. I found that adding '--oformat=elf64-powerpc' to the Makefile helped me tide over it, so I sent a patch to that end. Today, I verified on another ppc64 machine that ld is automatically choosing 'elf64-powerpc'. This machine is running 'ld-2.23' So, this patch can be ignored, since it appears to be a toolchain dependency. Or, we could put it in place, to ensure kvmtool builds dont break even if the toolchain is not perfectly configured. As you suggest :) Regards, Prerna > > > On Wed, Apr 10, 2013 at 2:44 AM, Pekka Enberg <penberg@xxxxxxxxxx > <mailto:penberg@xxxxxxxxxx>> wrote: > > On Tue, Apr 9, 2013 at 8:29 PM, Prerna Saxena > <prerna@xxxxxxxxxxxxxxxxxx <mailto:prerna@xxxxxxxxxxxxxxxxxx>> wrote: > > 'lkvm' compilation on ppc64 fails with the following error : > > ...[snip].. > > LINK guest/init > > LINK lkvm > > /usr/bin/ld: powerpc:common architecture of input file > `guest/guest_init.o' > > is incompatible with powerpc:common64 output > > collect2: ld returned 1 exit status > > make: *** [lkvm] Error 1 > > > > This patch corrects the error above, and enables 'lkvm' to compile > on ppc64 > > architecture. > > > > Signed-off-by: Prerna Saxena <prerna@xxxxxxxxxxxxxxxxxx > <mailto:prerna@xxxxxxxxxxxxxxxxxx>> > > --- > > tools/kvm/Makefile | 4 ++++ > > 1 file changed, 4 insertions(+) > > > > diff --git a/tools/kvm/Makefile b/tools/kvm/Makefile > > index 0c59faa..269e29e 100644 > > --- a/tools/kvm/Makefile > > +++ b/tools/kvm/Makefile > > @@ -335,7 +335,11 @@ $(PROGRAM_ALIAS): $(PROGRAM) > > $(GUEST_INIT): guest/init.c > > $(E) " LINK " $@ > > $(Q) $(CC) -static guest/init.c -o $@ > > +ifeq ($(ARCH), powerpc) > > + $(Q) $(LD) -r -b binary --oformat elf64-powerpc -o > guest/guest_init.o $(GUEST_INIT) > > +else > > $(Q) $(LD) -r -b binary -o guest/guest_init.o $(GUEST_INIT) > > +endif > > > > $(DEPS): > > > > -- > > 1.7.10.4 > > Michael, Sasha, comments? > -- > To unsubscribe from this list: send the line "unsubscribe kvm" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > <mailto:majordomo@xxxxxxxxxxxxxxx> > More majordomo info at http://vger.kernel.org/majordomo-info.html > > -- Prerna Saxena Linux Technology Centre, IBM Systems and Technology Lab, Bangalore, India -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html