This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
RE: [PATCH 2/2] Remove ancient GCC string inlines
- From: Joseph Myers <joseph at codesourcery dot com>
- To: Wilco Dijkstra <wdijkstr at arm dot com>
- Cc: 'GNU C Library' <libc-alpha at sourceware dot org>
- Date: Mon, 12 Oct 2015 13:00:14 +0000
- Subject: RE: [PATCH 2/2] Remove ancient GCC string inlines
- Authentication-results: sourceware.org; auth=none
- References: <000401d102aa$8db859e0$a9290da0$ at com> <alpine dot DEB dot 2 dot 10 dot 1510091558180 dot 20476 at digraph dot polyomino dot org dot uk> <000801d102b1$3e4f33e0$baed9ba0$ at com> <alpine dot DEB dot 2 dot 10 dot 1510091657190 dot 20476 at digraph dot polyomino dot org dot uk> <000901d104e0$069f65b0$13de3110$ at com> <alpine dot DEB dot 2 dot 10 dot 1510121131000 dot 16894 at digraph dot polyomino dot org dot uk> <000a01d104ed$0b7a9c00$226fd400$ at com>
On Mon, 12 Oct 2015, Wilco Dijkstra wrote:
> ../sysdeps/unix/sysv/linux/i386/sysdep.h:409:12: error: '__NR_set_thread_area' undeclared (first use
> in this function)
If you have a compiler installation with working -m32 support, it should
be searching a copy of kernel headers (installed with the Linux kernel's
headers_install target) containing asm/unistd.h that looks like
#ifndef _ASM_X86_UNISTD_H
#define _ASM_X86_UNISTD_H
/* x32 syscall flag bit */
#define __X32_SYSCALL_BIT 0x40000000
# ifdef __i386__
# include <asm/unistd_32.h>
# elif defined(__ILP32__)
# include <asm/unistd_x32.h>
# else
# include <asm/unistd_64.h>
# endif
#endif /* _ASM_X86_UNISTD_H */
and where unistd_32.h contains the definition of __NR_set_thread_area, and
where an include of sys/syscall.h from within glibc ends up including that
<asm/unistd.h>.
So, you need to find out why your compiler installation isn't finding an
appropriate asm/unistd.h, and fix that problem.
--
Joseph S. Myers
joseph@codesourcery.com