Re: kvmtool : [PATCH] PowerPc : Fix compilation for ppc64

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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




[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux