On 7/24/12 1:24 PM, Andrew Bradford wrote:
On Tue, 24 Jul 2012 13:26:30 -0400
Andrew Bradford<[email protected]>  wrote:

On Fri, 20 Jul 2012 17:16:18 -0500
Ron McDowell<[email protected]>  wrote:

On 7/20/12 1:32 PM, Andrew Bradford wrote:
On Fri, 20 Jul 2012 12:57:42 -0500
Ron McDowell<[email protected]>   wrote:

What's the output of the 'env' command?  That's more informative than
your rc file.
[clfs@d430(Linux)]>  env
CLFS_HOST=i486-cross-linux-gnu
TERM=xterm-color
CLFS_TARGET=armv4t-unknown-linux-uclibc
You can't do this.  Set to "armv4t-unknown-linux-uclibceabi" if you want
to use EABI (aapcs or aapcs-linux).  If you don't, you'll hit the "FPA
isn't supported in aapcs" issue later.

CLFS_FPU=
CLFS_ARM_ARCH=armv4t
CLFS_ARM_MODE=thumb
Set to "arm".

CLFS=/mnt/clfs
PATH=/mnt/clfs/cross-tools/bin:/bin:/usr/bin
PWD=/mnt/clfs/sources/Embed
EDITOR=/usr/bin/vi
CLFS_ARCH=arm
PS1=\w\n[\u@\h(Linux)]>
SHLVL=1
HOME=/home/clfs
CLFS_ABI=aapcs
Use "aapcs-linux" instead.  4 byte enums don't cost more but may save
you some trouble down the road.

CLFS_ENDIAN=little
CLFS_FLOAT=soft
HISTFILE=/home/clfs/.sh_history
_=/usr/bin/env
OLDPWD=/mnt/clfs/sources
I'm working on the "cannot compute suffix of object files" issue,
hopefully I'll have something useful soon.
With those tweaks (and renaming my
${CLFS}/cross-tools/armv4t-unknown-linux-uclibc directory to be
${CLFS}/cross-tools/armv4t-unknown-linux-uclibceabi), I can build gcc
4.6.1 without anything put the softfloat patch.  The "cannot compute
suffix" problem goes away on its own.

None of the env vars I said to change above get used for anything
important until gcc (binutils uses the triplet but just for the
directory name, I think).  Although, rebuilding binutils after you
change your env may not be a bad idea in the long run, there may be tiny
differences that bite you later.

Try changing those env in your .bashrc, then logging out and back in
(as login shell) as your clfs user.  Delete your gcc-build directory
and do the configure over again.

-Andrew

Starting with an empty $CLFS, and with this env:

[clfs@d430(Linux)]> env
CLFS_HOST=i486-cross-linux-gnu
TERM=xterm-color
CLFS_TARGET=armv4t-unknown-linux-uclibceabi
CLFS_FPU=
CLFS_ARM_ARCH=armv4t
CLFS_ARM_MODE=arm
CLFS=/mnt/clfs
PATH=/mnt/clfs/cross-tools/bin:/bin:/usr/bin
PWD=/mnt/clfs/sources/Embed
CLFS_ARCH=arm
EDITOR=/usr/bin/vi
OTYP=Linux
PS1=\w\n[\u@\h(Linux)]>
HOME=/home/clfs
SHLVL=1
CLFS_ABI=aapcs-linux
CLFS_ENDIAN=little
CLFS_FLOAT=soft
HISTFILE=/home/clfs/.sh_history
_=/usr/bin/env

It still craps out in the first pass at gcc-4.6.1...

+ sed -i s/CONFIG_ARM_OABI/CONFIG_ARM_EABI/g .config
+ make oldconfig
  MKDIR include/config
  HOSTCC-o extra/config/conf.o
  GEN extra/config/zconf.tab.c
  GEN extra/config/lex.zconf.c
  GEN extra/config/zconf.hash.c
  HOSTCC-o extra/config/zconf.tab.o
  HOSTCC extra/config/conf
./.config:39:warning: override: reassigning to symbol CONFIG_ARM_EABI
*
* Restart config...
*
*
* Target Architecture Features and Options
*
Target ABI
  1. OABI (CONFIG_ARM_OABI) (NEW)
> 2. EABI (CONFIG_ARM_EABI)
choice[1-2?]: Target Processor Type
> 1. Generic Arm (CONFIG_GENERIC_ARM)
  2. Arm 610 (CONFIG_ARM610)
  3. Arm 710 (CONFIG_ARM710)
  4. Arm 7TDMI (CONFIG_ARM7TDMI)
  5. Arm 720T (CONFIG_ARM720T)
  6. Arm 920T (CONFIG_ARM920T)
  7. Arm 922T (CONFIG_ARM922T)
  8. Arm 926T (CONFIG_ARM926T)
  9. Arm 10T (CONFIG_ARM10T)
  10. Arm 1136JF-S (CONFIG_ARM1136JF_S)
  11. Arm 1176JZ-S (CONFIG_ARM1176JZ_S)
  12. Arm 1176JZF-S (CONFIG_ARM1176JZF_S)
  13. Arm Cortex-M3 (CONFIG_ARM_CORTEX_M3)
  14. Arm Cortex-M1 (CONFIG_ARM_CORTEX_M1)
  15. Intel StrongArm SA-110 (CONFIG_ARM_SA110)
  16. Intel StrongArm SA-1100 (CONFIG_ARM_SA1100)
  17. Intel Xscale (CONFIG_ARM_XSCALE)
  18. Intel Xscale With WMMX PXA27x (CONFIG_ARM_IWMMXT)
choice[1-18?]: 1
*
* Using ELF file format
*
Target Processor Endianness
  1. Big Endian (ARCH_WANTS_BIG_ENDIAN)
> 2. Little Endian (ARCH_WANTS_LITTLE_ENDIAN)
choice[1-2?]: 2
Target CPU has a memory management unit (MMU) (ARCH_HAS_MMU) [Y/n/?] y
  Do you want to utilize the MMU? (ARCH_USE_MMU) [Y/n/?] y
Enable floating point number support (UCLIBC_HAS_FLOATS) [Y/n/?] y
  Target CPU has a floating point unit (FPU) (UCLIBC_HAS_FPU) [Y/n/?] y
  Enable full C99 math library support (DO_C99_MATH) [N/y/?] n
Enable XSI math extensions to the ISO C standard (bessel) (DO_XSI_MATH) [N/y/?] n
  Enable C99 Floating-point environment (UCLIBC_HAS_FENV) [N/y/?] n
Linux kernel header location (KERNEL_HEADERS) [/usr/include] /usr/include
#
# configuration written to ./.config
#
+ make
  MKDIR include/bits
  GEN include/bits/uClibc_config.h
  LN include/fpu_control.h
  LN include/dl-osinfo.h
  LN include/hp-timing.h
  LN include/bits/byteswap-common.h
...
  LN include/sys/elf.h
  LN include/sys/io.h
  LN include/sys/procfs.h
  LN include/sys/ucontext.h
  LN include/sys/user.h
  MKDIR libm/arm
  GEN include/bits/sysnum.h
cc1: error: unrecognized command line option "-mlittle-endian"
cc1: error: unrecognized command line option "-mlittle-endian"
ERROR: Could not generate syscalls.
Make sure that you have proper kernel headers.
Your .config in KERNEL_HEADERS="" was set to:
/usr/include/
make: *** [include/bits/sysnum.h] Error 1
+ exit 1


--
Ron McDowell
San Antonio TX

_______________________________________________
Clfs-support mailing list
[email protected]
http://lists.cross-lfs.org/listinfo.cgi/clfs-support-cross-lfs.org

Reply via email to