⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 linux-2.6.5-x86_64-unistd.patch

📁 linux下编译交叉工具链的工具源码
💻 PATCH
字号:
Retrieved with wget http://www.x86-64.org/lists/discuss/msg04963.htmlthen tabs fixed up by rediffingMessage-Id: EFF62C7EE88E71429E38641A1172F4C2077104@net.teracruz.comTo: discuss@xxxxxxxxxxSubject: Compile error with glibc 2.3.2 + Linux 2.6.5 ARCH=x86_64From: "David Lee" david.lee@xxxxxxxxxxxxDate: Wed, 21 Apr 2004 15:26:04 -0500</li>I am getting compiler errors when trying to compile glibc 2.3.2 usingthe kernel headers from linux 2.6.5.  The headers from linux 2.6.3 workfine.I've traced the cause of the problem to a change made in./include/asm-x86_64/unistd.h in the 2.6.4 release.+#ifndef __ASSEMBLY__++#include <linux/linkage.h>+#include <linux/compiler.h>+#include <linux/types.h>+#include <asm/ptrace.h>++asmlinkage long sys_ptrace(long request, long pid,+                                unsigned long addr, long data);+asmlinkage long sys_iopl(unsigned int level, struct pt_regs regs);+asmlinkage long sys_ioperm(unsigned long from, unsigned long num, intturn_on);+struct sigaction;+asmlinkage long sys_rt_sigaction(int sig,+                                const struct sigaction __user *act,+                                struct sigaction __user *oact,+                                size_t sigsetsize);++#endif  /* __ASSEMBLY__ */Within glibc, ./sysdeps/unix/sysv/linux/x86_64/syscall.S ends upincluding this file, which chokes the assembler with the structdeclarations in the above #include's./home/dlee/vcs/Products/Breeze/Dev/Prj/LinuxRH8/tscale2/tools/x86_64/x86_64-linux/glibcinclude/linux/posix_types.h: Assembler messages:/home/dlee/vcs/Products/Breeze/Dev/Prj/LinuxRH8/tscale2/tools/x86_64/x86_64-linux/glibcinclude/linux/posix_types.h:36: Error: no suchinstruction: `typedef struct{'There are also errors about conflicting re-declarations further along inthe glibc build.../posix/sys/types.h:62: error: conflicting types for `dev_t'/home/dlee/vcs/Products/Breeze/Dev/Prj/LinuxRH8/tscale2/tools/x86_64/x86_64-linux/glibcinclude/linux/types.h:23: error: previous declaration of`dev_t'Changing the '#ifndef __ASSEMBLY__' to '#if ((!defined __ASSEMBLY__) &&(defined __KERNEL__))' clears up the problem.  My patch is below.dave--- linux-2.6.5/include/asm-x86_64/unistd.h.old	2004-04-03 19:37:36.000000000 -0800+++ linux-2.6.5/include/asm-x86_64/unistd.h	2004-05-05 11:07:11.000000000 -0700@@ -713,7 +713,7 @@  #endif /* __KERNEL_SYSCALLS__ */ -#ifndef __ASSEMBLY__+#if ((!defined __ASSEMBLY__) && (defined __KERNEL__))  #include <linux/linkage.h> #include <linux/compiler.h>@@ -730,7 +730,7 @@ 				struct sigaction __user *oact, 				size_t sigsetsize); -#endif	/* __ASSEMBLY__ */+#endif /* ((!defined __ASSEMBLY__) && (defined __KERNEL__) */  #endif /* __NO_STUBS */ 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -