mips64 problems
Florian Fainelli
florian at openwrt.org
Mon Dec 3 17:25:33 UTC 2012
On Sunday 18 November 2012 05:08:44 Mike Frysinger wrote:
> On Wednesday 26 September 2012 10:54:10 Waldemar Brodkorb wrote:
> > The problem is this line in Rules.mak:
> > ifneq ($(findstring $(TARGET_ARCH) , hppa64 ia64 mips64 powerpc64 s390x
> > sparc64 x86_64 ),) UCLIBC_LDSO_NAME := ld64-uClibc
> > ARCH_NATIVE_BIT := 64
> > else
> > UCLIBC_LDSO_NAME := ld-uClibc
> > ARCH_NATIVE_BIT := 32
> > endif
> >
> > TARGET_ARCH can not be set to mips64 via make menuconfig or any .config.
> > How is it supposed to work?
> >
> > Would be the use of TARGET_SUBARCH a solution?
>
> no, it should be using the ABI field for mips and ignoring the arch entirely
>
> looking at gcc, i see it using these paths:
> o32: /lib/ld-uClibc.so.0
> n32: /lib32/ld-uClibc.so.0
> n64: /lib/ld64-uClibc.so.0
>
> you could try this patch:
This looks good to me, and actually works for me. Thanks!
>
> --- a/Rules.mak
> +++ b/Rules.mak
> @@ -118,12 +118,17 @@
> LIBC := libc
> SHARED_LIBNAME := $(LIBC).so.$(ABI_VERSION)
> UBACKTRACE_DSO := libubacktrace.so.$(ABI_VERSION)
> -ifneq ($(findstring $(TARGET_ARCH) , hppa64 ia64 mips64 powerpc64 s390x sparc64 x86_64 ),)
> +
> +UCLIBC_LDSO_NAME := ld-uClibc
> +ARCH_NATIVE_BIT := 32
> +ifneq ($(findstring $(TARGET_ARCH) , hppa64 ia64 powerpc64 s390x sparc64 x86_64 ),)
> UCLIBC_LDSO_NAME := ld64-uClibc
> ARCH_NATIVE_BIT := 64
> else
> -UCLIBC_LDSO_NAME := ld-uClibc
> -ARCH_NATIVE_BIT := 32
> +ifeq ($(CONFIG_MIPS_N64_ABI),y)
> +UCLIBC_LDSO_NAME := ld64-uClibc
> +ARCH_NATIVE_BIT := 64
> +endif
> endif
> UCLIBC_LDSO := $(UCLIBC_LDSO_NAME).so.$(ABI_VERSION)
> NONSHARED_LIBNAME := uclibc_nonshared.a
> -mike
More information about the uClibc
mailing list