We are having trouble building the uClinux image.
After applying the patch of 2004/2/18, (although it reports that every
hunk failed)
and copying config.uClibc and common-config.arch,
we run menuconfig, choose default options, and then when we run
make dep
make clean
make
we get this error:
UILD_BASENAME=xversion -c -o xversion.o xversion.c
rm -f xilinx_ocp.o
mb-ld --defsym _STACK_SIZE=0x00 -r -o xilinx_ocp.o xbasic_types.o
xdma_channel.o xdma_channel_sg.o xipif_v1_23_b.o xpacket_fifo_v1_00_b.o
xversion.o
make[2]: Leaving directory
`/uclinux/uClinux-2.4.x/arch/microblaze/xilinx_ocp'
mb-ld -T linux.ld --defsym _STACK_SIZE=0x00
arch/microblaze/kernel/head.o init/main.o init/version.o
init/do_mounts.o \
--start-group \
arch/microblaze/kernel/kernel.o kernel/kernel.o
mmnommu/mmnommu.o fs/fs.o ipc/ipc.o
arch/microblaze/xilinx_ocp/xilinx_ocp.o \
drivers/char/char.o drivers/block/block.o drivers/misc/misc.o
drivers/net/net.o drivers/mtd/mtdlink.o drivers/media/media.o \
net/network.o \
/uclinux/uClinux-2.4.x/lib/lib.a arch/microblaze/lib/lib.a \
--end-group \
-o linux
mb-nm linux | grep -v '\(compiled\)\|\(\.o$\)\|\( [aUw]
\)\|\(\.\.ng$\)\|\(LASH[RL]DI\)' | sort > System.map
make[1]: Leaving directory `/uclinux/uClinux-2.4.x'
if [ -f linux-2.4.x/vmlinux ]; then \
ln -f linux-2.4.x/vmlinux linux-2.4.x/linux ; \
fi
for dir in lib user ; do [ ! -d $dir ] || make ARCH=microblaze
CROSS_COMPILE=mb- -C $dir || exit 1 ; done
make[1]: Entering directory `/uclinux/uClinux-dist/lib'
for i in uClibc libnet libcrypt_old /uclinux/uClinux-dist/prop zlib ;
do [ ! -d $i ] || make -C $i || exit $? ; done
make[2]: Entering directory `/uclinux/uClinux-dist/uClibc'
rm -f -r include/bits
install -d include/bits
#
# using defaults found in .config
#
' invalid for UCLIBC_PRINTF_SCANF_POSITIONAL_ARGS
make[2]: *** [include/bits/uClibc_config.h] Error 1
make[2]: Leaving directory `/uclinux/uClinux-dist/uClibc'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/uclinux/uClinux-dist/lib'
make: *** [subdirs] Error 1
Before apply the patches, we had a different error:
make[1]: Entering directory `/uclinux/uClinux-dist/lib'
for i in uClibc libnet libcrypt_old /uclinux/uClinux-dist/prop zlib ;
do [ ! -d $i ] || make -C $i || exit $? ; done
make[2]: Entering directory `/uclinux/uClinux-dist/uClibc'
rm -f -r include/bits
install -d include/bits
#
# using defaults found in .config
#
*
* uClibc Configuration
*
Target Architecture
1. alpha (TARGET_alpha)
2. arm (TARGET_arm)
3. cris (TARGET_cris)
4. e1 (TARGET_e1)
5. h8300 (TARGET_h8300)
6. i386 (TARGET_i386)
7. i960 (TARGET_i960)
8. m68k (TARGET_m68k)
> 9. microblaze (TARGET_microblaze)
10. mips (TARGET_mips)
11. powerpc (TARGET_powerpc)
12. SuperH (TARGET_sh)
13. sparc (TARGET_sparc)
14. v850 (TARGET_v850)
choice[1-14?]: 9
*
* Target Architecture Features and Options
*
Target Processor Endianness
1. Little Endian (ARCH_LITTLE_ENDIAN)
> 2. Big Endian (ARCH_BIG_ENDIAN)
choice[1-2?]: 2
Enable floating point number support (UCLIBC_HAS_FLOATS) [Y/n/?] y
Target CPU has a floating point unit (FPU) (HAS_FPU) [N/y/?] n
Enable full C99 math library support (DO_C99_MATH) [N/y/?] n
Compiler Warnings (WARNINGS) [-Wall] -Wall
Linux kernel header location (KERNEL_SOURCE) [$(ROOTDIR)/$(LINUXDIR)]
$(ROOTDIR)/$(LINUXDIR)
*
* General Library Settings
*
Support ET_DYN in shared library loader (UCLIBC_PIE_SUPPORT) [N/y/?] n
Support global constructors and destructors (UCLIBC_CTOR_DTOR) [N/y/?] n
Support for propolice stack protection (UCLIBC_PROPOLICE) [N/y/?] n
Support gprof profiling (UCLIBC_PROFILING) [Y/n/?] y
POSIX Threading Support (UCLIBC_HAS_THREADS) [Y/n/?] y
Build pthreads debugging support (PTHREADS_DEBUG_SUPPORT) [N/y/?] n
Large File Support (UCLIBC_HAS_LFS) [Y/n/?] y
Malloc Implementation
1. malloc (MALLOC)
> 2. malloc-simple (MALLOC_SIMPLE)
choice[1-2?]: 2
Malloc returns live pointer for malloc(0) (MALLOC_GLIBC_COMPAT) [N/y/?]
n
Dynamic atexit() Support (UCLIBC_DYNAMIC_ATEXIT) [N/y/?] n
Shadow Password Support (HAS_SHADOW) [N/y/?] n
Support only Unix 98 PTYs (UNIX98PTY_ONLY) [Y/n/?] y
Assume that /dev/pts is a devpts or devfs file system (ASSUME_DEVPTS)
[Y/n/?] y
Support 'struct tm' timezone extension fields
(UCLIBC_HAS_TM_EXTENSIONS) [Y/n/?] y
Enable caching of the last valid timezone 'TZ' string
(UCLIBC_HAS_TZ_CACHING) [Y/n/?] y
Enable '/etc/TZ' file support to set a default timezone
(uClibc-specific) (UCLIBC_HAS_TZ_FILE) [Y/n/?] y
Repeatedly read the '/etc/TZ' file (UCLIBC_HAS_TZ_FILE_READ_MANY)
[Y/n/?] y
Path to the 'TZ' file for setting the global timezone
(UCLIBC_TZ_FILE_PATH) [/etc/TZ] /etc/TZ
*
* Networking Support
*
IP version 6 Support (UCLIBC_HAS_IPV6) [N/y/?] n
Remote Procedure Call (RPC) support (UCLIBC_HAS_RPC) [Y/n/?] y
Full RPC support (UCLIBC_HAS_FULL_RPC) [Y/n/?] y
*
* String and Stdio Support
*
Use Table Versions Of 'ctype.h' Functions. (UCLIBC_HAS_CTYPE_TABLES)
[Y/n/?] y
Support Signed Characters In 'ctype.h' Functions.
(UCLIBC_HAS_CTYPE_SIGNED) [Y/n/?] y
ctype argument checking
> 1. Do not check -- unsafe (UCLIBC_HAS_CTYPE_UNSAFE)
2. Detect and handle appropriately (UCLIBC_HAS_CTYPE_CHECKED)
3. Issue a diagnostic and abort() (UCLIBC_HAS_CTYPE_ENFORCED)
choice[1-3?]: 1
Wide Character Support (UCLIBC_HAS_WCHAR) [N/y/?] n
Locale Support (UCLIBC_HAS_LOCALE) [N/y/?] n
Support hexadecimal float notation (UCLIBC_HAS_HEXADECIMAL_FLOATS)
[N/y/?] n
Use the old vfprintf implementation (USE_OLD_VFPRINTF) [Y/n/?] y
Support glibc's 'a' flag for scanf string conversions
(UCLIBC_HAS_SCANF_GLIBC_A_FLAG) [N/y/?] n
Stdio buffer size
1. none (WARNING - BUFSIZ will be 256 in stdio.h)
(UCLIBC_HAS_STDIO_BUFSIZ_NONE)
2. 256 (minimum ANSI/ISO C99 value) (UCLIBC_HAS_STDIO_BUFSIZ_256)
3. 512 (UCLIBC_HAS_STDIO_BUFSIZ_512)
4. 1024 (UCLIBC_HAS_STDIO_BUFSIZ_1024)
5. 2048 (UCLIBC_HAS_STDIO_BUFSIZ_2048)
> 6. 4096 (UCLIBC_HAS_STDIO_BUFSIZ_4096)
7. 8192 (UCLIBC_HAS_STDIO_BUFSIZ_8192)
choice[1-7?]: 6
Stdio builtin buffer size (uClibc-specific)
> 1. None (UCLIBC_HAS_STDIO_BUILTIN_BUFFER_NONE)
2. 4 (UCLIBC_HAS_STDIO_BUILTIN_BUFFER_4)
3. 8 (UCLIBC_HAS_STDIO_BUILTIN_BUFFER_8)
choice[1-3?]: 1
Provide a macro version of getc() (UCLIBC_HAS_STDIO_GETC_MACRO) [Y/n/?]
y
Provide a macro version of putc() (UCLIBC_HAS_STDIO_PUTC_MACRO) [Y/n/?]
y
Support auto-r/w transition (UCLIBC_HAS_STDIO_AUTO_RW_TRANSITION)
[Y/n/?] y
Support an fopen() 'F' flag for large file mode (uClibc-specific)
(UCLIBC_HAS_FOPEN_LARGEFILE_MODE) [N/y/?] n
Support an fopen() 'x' flag for exclusive mode (glibc-compat)
(UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE) [N/y/?] n
Support fmemopen(), open_memstream(), and fopencookie() (glibc-compat)
(UCLIBC_HAS_GLIBC_CUSTOM_STREAMS) [N/y/?] n
Support the '%m' specifier in printf format strings (glibc-compat)
(UCLIBC_HAS_PRINTF_M_SPEC) [N/y/?] n
Include the errno message text in the library
(UCLIBC_HAS_ERRNO_MESSAGES) [Y/n/?] y
Support sys_errlist[] (obsolete-compat) (UCLIBC_HAS_SYS_ERRLIST)
[N/y/?] n
Include the signum message text in the library
(UCLIBC_HAS_SIGNUM_MESSAGES) [Y/n/?] y
Support sys_siglist[] (bsd-compat) (UCLIBC_HAS_SYS_SIGLIST) [N/y/?] n
Support gnu getopt (UCLIBC_HAS_GNU_GETOPT) [Y/n/?] y
*
* Big and Tall
*
Regular Expression Support (UCLIBC_HAS_REGEX) [Y/n/?] y
Support the wordexp() interface (UCLIBC_HAS_WORDEXP) [N/y/?] n
Support the ftw() and nftw() interfaces (UCLIBC_HAS_FTW) [N/y/?] n
Support the glob() interface (UCLIBC_HAS_GLOB) [Y/n/?] y
*
* Library Installation Options
*
uClibc runtime library directory (RUNTIME_PREFIX)
[/usr/$(TARGET_ARCH)-linux-uclibc/] /usr/$(TARGET_ARCH)-linux-uclibc/
uClibc development environment directory (DEVEL_PREFIX) []
*
* uClibc development/debugging options
*
Build uClibc with debugging symbols (DODEBUG) [Y/n/?] y
Build uClibc with run-time assertion testing (DOASSERTS) [N/y/?] n
Manuel's hidden warnings (UCLIBC_MJN3_ONLY) [N/y/?] n
+ ./extra/scripts/fix_includes.sh -k /uclinux/uClinux-dist/linux-2.4.x
-t -n
Current kernel version is 2.4.24-uc0
Using kernel headers from 2.4.24-uc0 for architecture '-n'
provided in directory /uclinux/uClinux-dist/linux-2.4.x
+ TOPDIR=.
+ CC=mb-gcc
+ /bin/sh extra/scripts/gen_bits_syscall_h.sh
+ cmp include/bits/sysnum.h include/bits/sysnum.h.new
+ mv -f include/bits/sysnum.h.new include/bits/sysnum.h
make -C libc/sysdeps/linux/common headers
make[3]: Entering directory
`/uclinux/uClinux-dist/uClibc/libc/sysdeps/linux/common'
ln -fs ../libc/sysdeps/linux/common/fpu_control.h ../../../..//include/
make[3]: Leaving directory
`/uclinux/uClinux-dist/uClibc/libc/sysdeps/linux/common'
make -C libc/sysdeps/linux/ headers
make[3]: Entering directory
`/uclinux/uClinux-dist/uClibc/libc/sysdeps/linux'
make[3]: *** No rule to make target `headers'. Stop.
make[3]: Leaving directory
`/uclinux/uClinux-dist/uClibc/libc/sysdeps/linux'
make[2]: *** [headers] Error 2
make[2]: Leaving directory `/uclinux/uClinux-dist/uClibc'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/uclinux/uClinux-dist/lib'
make: *** [subdirs] Error 1
Adding an empty 'headers:' target didn't help, there were 5 or 6 header
files related to 'assert' that it couldn't find.
Any help would be greatly appreciated.
___________________________
microblaze-uclinux mailing list
microblaze-uclinux@itee.uq.edu.au
Project Home Page : http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux
Mailing List Archive : http://www.itee.uq.edu.au/~listarch/microblaze-uclinux/
|